Appearance
Developer Environment Setup
A craftsman is only as effective as their workshop. Before Week 1 starts at Tech Minds Academy, you need a clean, reliable, and offline-resilient developer environment configured on your laptop.
This 2026 setup guide walks Windows, macOS, and Linux students step by step through installing the exact tools used across our Abuja Campus and Live Online cohorts — along with battle-tested optimizations for Nigerian developers dealing with variable internet bandwidth and power schedules.
What Tools Do You Need for Your Track?
Install the Core Universal Stack first regardless of your programme, then add any track-specific runtime listed for your course:
| Programme / Track | Core Universal Stack | Track-Specific Tools Required |
|---|---|---|
| HTML Mastery & CSS Mastery | VS Code, Google Chrome, Git | Live Server extension, Prettier |
| JavaScript, React.js & Node.js | VS Code, Google Chrome, Git | Node.js 22 LTS, npm/pnpm, ESLint, Thunder Client, Docker (for Node.js) |
| Prompt Engineering & Agentic Engineering | VS Code, Google Chrome, Git | Node.js 22 LTS, Python 3.12+ (uv), Thunder Client |
| Python, Data Science & ML | VS Code, Google Chrome, Git | Python 3.12+ (venv & uv), VS Code Python & Jupyter extensions |
| Cloud & DevOps & Cyber Security | VS Code, Google Chrome, Git | WSL2 (Windows) or Linux, Docker Desktop, SSH client |
| Digital Marketing, Kids & Computer Training | Google Chrome, VS Code (Web modules) | Google Workspace / Microsoft Office, Scratch Desktop (Kids) |
1. Hardware, OS & Nigerian Developer Resilience Tips
Recommended Laptop Specifications
You do not need an expensive gaming laptop to learn software engineering. Here is what works smoothly in 2026:
| Spec | Minimum (Web, HTML/CSS/JS, Python Basics) | Recommended (React, Node, Docker, AI, Cloud) |
|---|---|---|
| Processor (CPU) | Intel Core i3 (8th Gen+) / AMD Ryzen 3 | Intel Core i5/i7 (10th Gen+), AMD Ryzen 5+, or Apple M1/M2/M3/M4 |
| Memory (RAM) | 8 GB RAM (4 GB will struggle with modern browsers) | 16 GB RAM (strongly recommended for Docker & WSL2) |
| Storage | 256 GB SSD (avoid slow mechanical HDDs!) | 512 GB NVMe SSD |
| Operating System | Windows 10/11 (64-bit), macOS 13+, or Ubuntu 22.04/24.04 LTS | Windows 11 Pro + WSL2, macOS 14+, or Ubuntu 24.04 LTS |
Best Cheap Hardware Upgrade
If you own an older laptop that feels sluggish, upgrading from a spinning Hard Disk Drive (HDD) to a 256 GB SSD and bumping RAM from 4 GB to 8 GB or 16 GB at a trusted computer technician costs far less than a new laptop and makes VS Code and Chrome 5x faster.
Practical Resilience Tips for Students in Nigeria
Power interruptions and mobile data costs should never stall your coding progress. Configure your laptop like a pro from Day 1:
- Install Offline Documentation (DevDocs.io):
- Open
https://devdocs.ioin Chrome while on campus Wi-Fi or night data. - Click Preferences -> Offline Data and install HTML, CSS, JavaScript, DOM, HTTP, React, Node.js, or Python documentation locally in your browser.
- Click the "Install App" icon in Chrome's address bar so DevDocs opens as a standalone desktop app with zero internet connection.
- Open
- Save Gigabytes of Mobile Data with
pnpmor Cachednpm:- Standard
npm installre-downloads hundreds of megabytes of packages across projects. Usingpnpmstores every package once on your SSD and hard-links it instantly across all future React/Node projects — even offline if cached! - When using
npm, pass--prefer-offlinesonpmchecks your local cache before hitting the network:bashnpm config set prefer-offline true
- Standard
- Maximize Laptop Battery Runtime During Outages:
- Enable Battery Saver / Energy Saver immediately when off mains power and drop screen brightness to 50–60%.
- Close unused Chrome tabs (20 open YouTube/documentation tabs drain RAM and CPU rapidly) or turn on Memory Saver in Chrome (
chrome://settings/performance). - Pause background Windows Updates and OneDrive/Dropbox syncing when tethering to a mobile hotspot (
Settings -> Network & Internet -> Wi-Fi -> Metered Connection: ON). - Turn on Auto Save in VS Code (
"files.autoSave": "afterDelay") so a sudden battery shutdown never costs you an hour of unsaved code.
2. Terminal & Operating System Preparation
Developers use the command line every day to run Git, start servers, and install packages.
Windows 10 / 11 (PowerShell, Windows Terminal & WSL2)
- Windows Terminal: Windows 11 includes Windows Terminal by default. On Windows 10, install Windows Terminal free from the Microsoft Store so you get tabs, clean fonts, and fast PowerShell sessions.
- Show File Extensions in File Explorer (Critical!): Beginners often accidentally name a file
index.html.txtbecause Windows hides file extensions by default. Fix this once:- In Windows 11 File Explorer, click View -> Show -> File name extensions (ensure it is checked).
- Also check Hidden items so you can see
.gitand.gitignorefiles.
- Allow Local Scripts in PowerShell: Windows blocks tools like
npm,pnpm, and Pythonvenvactivation scripts out of the box unless you set the execution policy for your user account. Open PowerShell and run:powershellTypeSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserYand press Enter if prompted. - WSL2 (Windows Subsystem for Linux) — For Backend, Cloud, DevOps & Cyber Security: Students in HTML, CSS, and JavaScript can use native Windows PowerShell with zero issues. When you reach Node.js, Cloud Computing & DevOps, or Cyber Security, install Ubuntu inside Windows via WSL2 by opening PowerShell as Administrator and running:powershellRestart your computer when prompted and create a lowercase Linux username and password.
wsl --install -d Ubuntu-24.04
macOS
- Press
Cmd + Space, typeTerminal, and press Enter. - Install Xcode Command Line Tools (includes
gitand compilers):bashxcode-select --install - Install Homebrew — the standard package manager for macOS:bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Linux (Ubuntu / Debian / Mint)
Open your terminal (Ctrl + Alt + T) and ensure essential build tools and curl are installed:
bash
sudo apt update && sudo apt install -y build-essential curl git unzip3. Visual Studio Code (VS Code)
Visual Studio Code is the official code editor across all Tech Minds Academy tracks.
Installation
- Download the official installer from code.visualstudio.com.
- Important for Windows users: On the "Select Additional Tasks" screen of the installer, check all four boxes:
- Add "Open with Code" action to Windows Explorer file context menu
- Add "Open with Code" action to Windows Explorer directory context menu
- Register Code as an editor for supported file types
- Add to PATH (allows typing
code .in any terminal to open that folder!)
- macOS users: Drag Visual Studio Code into your
Applicationsfolder, open VS Code, pressCmd + Shift + P, typeShell Command: Install 'code' command in PATH, and press Enter.
Essential Extensions to Install
Press Ctrl + Shift + X (Cmd + Shift + X on macOS) to open the Extensions Marketplace and install these official extensions:
| Extension | Extension ID | Purpose |
|---|---|---|
| Live Server | ritwickdey.LiveServer | Launches a local development server that auto-refreshes Chrome whenever you save HTML/CSS/JS files. |
| Prettier - Code formatter | esbenp.prettier-vscode | Automatically formats HTML, CSS, JavaScript, JSON, and Markdown cleanly on save. |
| ESLint | dbaeumer.vscode-eslint | Catches JavaScript and React bugs and unused variables while you type. |
| Python | ms-python.python | Official Python language support, debugger, and virtual environment selector (Data & AI tracks). |
| Thunder Client | rangav.vscode-thunder-client | Lightweight REST API client right inside VS Code (uses far less RAM than Postman). |
| GitLens | eamodio.gitlens | Visualizes Git commit history, line authorship, and branch comparisons inside your editor. |
Tip: You can also install all six extensions in one command from your terminal:
bash
code --install-extension ritwickdey.LiveServer
code --install-extension esbenp.prettier-vscode
code --install-extension dbaeumer.vscode-eslint
code --install-extension ms-python.python
code --install-extension rangav.vscode-thunder-client
code --install-extension eamodio.gitlensRecommended settings.json Configuration
Press Ctrl + Shift + P (Cmd + Shift + P on macOS), type Preferences: Open User Settings (JSON), press Enter, and paste this clean starter configuration:
json
{
"editor.fontSize": 15,
"editor.tabSize": 2,
"editor.insertSpaces": true,
"editor.wordWrap": "on",
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.bracketPairColorization.enabled": true,
"editor.guides.bracketPairs": "active",
"editor.linkedEditing": true,
"editor.minimap.enabled": false,
"files.autoSave": "afterDelay",
"files.autoSaveDelay": 1000,
"files.trimTrailingWhitespace": true,
"terminal.integrated.defaultProfile.windows": "PowerShell",
"liveServer.settings.donotShowInfoMsg": true,
"[python]": {
"editor.tabSize": 4,
"editor.defaultFormatter": null
}
}Why these settings help immediately:
"editor.linkedEditing": trueautomatically renames a closing HTML tag (e.g.,</h2>) when you edit its opening tag (<h2>)!"editor.formatOnSave": truekeeps your indentation spotless every time you pressCtrl + S."files.autoSave": "afterDelay"protects your work from sudden power cuts.
4. Core Runtimes & Engineering Tools
Google Chrome & Chrome DevTools
We standardize on Google Chrome so every student sees the exact same Chrome DevTools panels taught in HTML Mastery, CSS Mastery, and JavaScript Fundamentals.
- Download Chrome from google.com/chrome.
- Memorize the universal DevTools shortcut:
- Windows / Linux:
F12orCtrl + Shift + I(or right-click any element -> Inspect) - macOS:
Cmd + Option + I
- Windows / Linux:
- Key panels you will use every week:
- Elements & Styles: Inspect HTML DOM trees, live-edit CSS rules, and debug the CSS Box Model.
- Device Toolbar (
Ctrl + Shift + M): Test mobile-first responsive layouts across iPhone, Android, iPad, and desktop screen widths. - Console: Run JavaScript expressions and read runtime errors.
- Network: Inspect API requests, HTTP status codes (
200,404,500), and asset sizes.
Git (Version Control)
Every student uses Git from Week 1.
- Windows: Download Git for Windows from git-scm.com/download/win. Accept the default options during setup (ensure "Git from the command line and also from 3rd-party software" and "Override the default branch name for new repositories ->
main" are selected). - macOS: Installed automatically with
xcode-select --installor viabrew install git. - Linux:
sudo apt install -y git
Verify in a new terminal window:
bash
git --version
# Expected output: git version 2.45.0 (or newer)Next, follow our full Git & GitHub Student Workflow Guide to configure your identity and connect GitHub.
Node.js LTS (v22.x+) & pnpm
Required for JavaScript Fundamentals, React.js Mastery, Node.js & Backend Dev, and Agentic Software Engineering.
Option A: Official LTS Installer (Simplest for Beginners)
- Visit nodejs.org and download the LTS (Long Term Support) installer (
v22.xLTS or current active LTS). - Run the installer with default settings (ensure Add to PATH is enabled).
Option B: Version Manager (nvm / nvm-windows) — Recommended for Full-Stack
- macOS / Linux / WSL2: Install
nvmfrom github.com/nvm-sh/nvm, then run:bashnvm install --lts nvm use --lts - Windows: Install
nvm-windowsfrom github.com/coreybutler/nvm-windows/releases, then runnvm install ltsandnvm use lts.
Verify Node.js & Enable pnpm
Open a fresh terminal and run:
bash
node -v
npm -v
# Enable pnpm (built into modern Node.js via Corepack — saves mobile data!)
corepack enable
pnpm -vPython 3.12+ (venv & uv)
Required for Python, Data Science & ML, Prompt Engineering, and Agentic Software Engineering.
- Install Python 3.12+:
- Windows: Download from python.org/downloads. CRITICAL: Check the box "Add python.exe to PATH" at the bottom of the very first installer screen before clicking Install Now!
- macOS:
brew install python@3.12 - Linux:
sudo apt install -y python3 python3-venv python3-pip
- Verify Python & Create Isolated Virtual Environments (
venv): Never install project packages globally on your OS. Inside any Python project folder:bash# Create virtual environment python -m venv .venv # Activate on Windows PowerShell: .\.venv\Scripts\Activate.ps1 # Activate on macOS / Linux / WSL2: source .venv/bin/activate - Install
uv(Modern Ultra-Fast Python Package Manager): In 2026,uvreplaces slowpipinstalls and caches wheels locally (saving bandwidth on Nigerian networks):powershell# Windows PowerShell powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"bash# macOS / Linux / WSL2 curl -LsSf https://astral.sh/uv/install.sh | sh
Docker Desktop (Backend, Cloud & DevOps Students Only)
Students in Node.js & Backend Dev (Stage 4–5) and Cloud Computing & DevOps use Docker to run PostgreSQL, Redis, and containerized microservices cleanly.
Skip Docker for now if you are taking HTML, CSS, JavaScript, or introductory tracks, or if your laptop has less than 8 GB RAM.
- On Windows, ensure WSL2 is installed first (
wsl --install) and hardware virtualization (Intel VT-x / AMD-V) is enabled in BIOS. - Download Docker Desktop from docker.com/products/docker-desktop.
- Tip to save RAM & battery: Close/Quit Docker Desktop from the system tray whenever you are not actively running containers!
- Verify when Docker Desktop is running:bash
docker --version docker compose version
5. Organising Your Tech Minds Workspace Folder
Do not scatter code files across your Desktop or Downloads folder, and avoid placing coding projects inside OneDrive (cloud sync often locks .git and node_modules folders!).
Create one clean root workspace folder right now:
bash
# Open your terminal and create a clean workspace directory
mkdir -p ~/techminds-projects/html-mastery
cd ~/techminds-projects/html-mastery
code .Naming Rules Every Developer Follows:
- Use all lowercase and hyphens (
kebab-case) for folders and web files:- Good:
week-01-about-me/index.html,contact-us.html,hero-banner.webp - Bad:
Week 1 Project/My First Page (Final).HTML(spaces and uppercase break Linux/Vercel web servers!)
- Good:
6. Troubleshooting Common Setup Issues
Issue 1: 'code', 'git', 'node', or 'python' is not recognized (PATH Error)
- Symptom: PowerShell says
The term 'node' is not recognized as the name of a cmdlet...right after installing. - Fixes:
- Close and reopen your terminal completely (and restart VS Code). Terminals only load
PATHvariables when launched. - For Python on Windows: Re-run the Python installer -> click Modify -> Next -> check "Add Python to environment variables" -> Install.
- For VS Code: Re-run installer and check Add to PATH, or on macOS run
Shell Command: Install 'code' command in PATHfromCmd + Shift + P.
- Close and reopen your terminal completely (and restart VS Code). Terminals only load
Issue 2: PowerShell running scripts is disabled on this system (PSSecurityException)
- Symptom: Running
npm,pnpm, or.\.venv\Scripts\Activate.ps1fails with a redUnauthorizedAccesserror mentioningabout_Execution_Policies. - Fix: Run this once in PowerShell (normal user window, no Admin needed):powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Issue 3: Port Already in Use (EADDRINUSE: address already in use :::3000 or :5500)
- Symptom: Starting Live Server, Vite, or Express fails because an older terminal tab is still holding port
3000,5173, or5500. - Fixes:
- Check VS Code's integrated terminal panel (
Ctrl + ~) for old background servers and pressCtrl + Cinside them to stop cleanly. - Or find and stop the process holding port
3000:powershell# Windows PowerShell: Find PID using port 3000 and stop it Get-NetTCPConnection -LocalPort 3000 | Select-Object OwningProcess Stop-Process -Id 12345 -Forcebash# macOS / Linux / WSL2: lsof -i :3000 kill -9 12345
- Check VS Code's integrated terminal panel (
Issue 4: Live Server Does Not Auto-Refresh on Save
- Symptom: You edit
index.htmlorstyles.css, but the browser page stays unchanged. - Fixes:
- Ensure you opened a Folder in VS Code (
File -> Open Folder), not a single loose file! Live Server requires a workspace folder to inject its live-reload script. - Ensure your HTML file has a valid
<!DOCTYPE html>,<head>, and<body>tag — Live Server injects its WebSocket reload snippet right before</body>.
- Ensure you opened a Folder in VS Code (
Final Readiness Checklist
Before moving on, verify that these commands work cleanly in your terminal:
bash
code --version
git --versionAll green? Proceed immediately to the Git & GitHub Student Workflow Guide to set up your developer portfolio!
