Skip to content

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 / TrackCore Universal StackTrack-Specific Tools Required
HTML Mastery & CSS MasteryVS Code, Google Chrome, GitLive Server extension, Prettier
JavaScript, React.js & Node.jsVS Code, Google Chrome, GitNode.js 22 LTS, npm/pnpm, ESLint, Thunder Client, Docker (for Node.js)
Prompt Engineering & Agentic EngineeringVS Code, Google Chrome, GitNode.js 22 LTS, Python 3.12+ (uv), Thunder Client
Python, Data Science & MLVS Code, Google Chrome, GitPython 3.12+ (venv & uv), VS Code Python & Jupyter extensions
Cloud & DevOps & Cyber SecurityVS Code, Google Chrome, GitWSL2 (Windows) or Linux, Docker Desktop, SSH client
Digital Marketing, Kids & Computer TrainingGoogle Chrome, VS Code (Web modules)Google Workspace / Microsoft Office, Scratch Desktop (Kids)

1. Hardware, OS & Nigerian Developer Resilience Tips ​

You do not need an expensive gaming laptop to learn software engineering. Here is what works smoothly in 2026:

SpecMinimum (Web, HTML/CSS/JS, Python Basics)Recommended (React, Node, Docker, AI, Cloud)
Processor (CPU)Intel Core i3 (8th Gen+) / AMD Ryzen 3Intel 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)
Storage256 GB SSD (avoid slow mechanical HDDs!)512 GB NVMe SSD
Operating SystemWindows 10/11 (64-bit), macOS 13+, or Ubuntu 22.04/24.04 LTSWindows 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:

  1. Install Offline Documentation (DevDocs.io):
    • Open https://devdocs.io in 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.
  2. Save Gigabytes of Mobile Data with pnpm or Cached npm:
    • Standard npm install re-downloads hundreds of megabytes of packages across projects. Using pnpm stores 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-offline so npm checks your local cache before hitting the network:
      bash
      npm config set prefer-offline true
  3. 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) ​

  1. 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.
  2. Show File Extensions in File Explorer (Critical!): Beginners often accidentally name a file index.html.txt because 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 .git and .gitignore files.
  3. Allow Local Scripts in PowerShell: Windows blocks tools like npm, pnpm, and Python venv activation scripts out of the box unless you set the execution policy for your user account. Open PowerShell and run:
    powershell
    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    Type Y and press Enter if prompted.
  4. 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:
    powershell
    wsl --install -d Ubuntu-24.04
    Restart your computer when prompted and create a lowercase Linux username and password.

macOS ​

  1. Press Cmd + Space, type Terminal, and press Enter.
  2. Install Xcode Command Line Tools (includes git and compilers):
    bash
    xcode-select --install
  3. 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 unzip

3. Visual Studio Code (VS Code) ​

Visual Studio Code is the official code editor across all Tech Minds Academy tracks.

Installation ​

  1. Download the official installer from code.visualstudio.com.
  2. 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!)
  3. macOS users: Drag Visual Studio Code into your Applications folder, open VS Code, press Cmd + Shift + P, type Shell 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:

ExtensionExtension IDPurpose
Live Serverritwickdey.LiveServerLaunches a local development server that auto-refreshes Chrome whenever you save HTML/CSS/JS files.
Prettier - Code formatteresbenp.prettier-vscodeAutomatically formats HTML, CSS, JavaScript, JSON, and Markdown cleanly on save.
ESLintdbaeumer.vscode-eslintCatches JavaScript and React bugs and unused variables while you type.
Pythonms-python.pythonOfficial Python language support, debugger, and virtual environment selector (Data & AI tracks).
Thunder Clientrangav.vscode-thunder-clientLightweight REST API client right inside VS Code (uses far less RAM than Postman).
GitLenseamodio.gitlensVisualizes 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.gitlens

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": true automatically renames a closing HTML tag (e.g., </h2>) when you edit its opening tag (<h2>)!
  • "editor.formatOnSave": true keeps your indentation spotless every time you press Ctrl + 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.

  1. Download Chrome from google.com/chrome.
  2. Memorize the universal DevTools shortcut:
    • Windows / Linux: F12 or Ctrl + Shift + I (or right-click any element -> Inspect)
    • macOS: Cmd + Option + I
  3. 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 --install or via brew 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) ​

  1. Visit nodejs.org and download the LTS (Long Term Support) installer (v22.x LTS or current active LTS).
  2. Run the installer with default settings (ensure Add to PATH is enabled).

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 -v

Python 3.12+ (venv & uv) ​

Required for Python, Data Science & ML, Prompt Engineering, and Agentic Software Engineering.

  1. 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
  2. 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
  3. Install uv (Modern Ultra-Fast Python Package Manager): In 2026, uv replaces slow pip installs 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.

  1. On Windows, ensure WSL2 is installed first (wsl --install) and hardware virtualization (Intel VT-x / AMD-V) is enabled in BIOS.
  2. Download Docker Desktop from docker.com/products/docker-desktop.
  3. Tip to save RAM & battery: Close/Quit Docker Desktop from the system tray whenever you are not actively running containers!
  4. 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!)

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:
    1. Close and reopen your terminal completely (and restart VS Code). Terminals only load PATH variables when launched.
    2. For Python on Windows: Re-run the Python installer -> click Modify -> Next -> check "Add Python to environment variables" -> Install.
    3. For VS Code: Re-run installer and check Add to PATH, or on macOS run Shell Command: Install 'code' command in PATH from Cmd + Shift + P.

Issue 2: PowerShell running scripts is disabled on this system (PSSecurityException) ​

  • Symptom: Running npm, pnpm, or .\.venv\Scripts\Activate.ps1 fails with a red UnauthorizedAccess error mentioning about_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, or 5500.
  • Fixes:
    1. Check VS Code's integrated terminal panel (Ctrl + ~) for old background servers and press Ctrl + C inside them to stop cleanly.
    2. 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 -Force
      bash
      # macOS / Linux / WSL2:
      lsof -i :3000
      kill -9 12345

Issue 4: Live Server Does Not Auto-Refresh on Save ​

  • Symptom: You edit index.html or styles.css, but the browser page stays unchanged.
  • Fixes:
    1. 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.
    2. Ensure your HTML file has a valid <!DOCTYPE html>, <head>, and <body> tag — Live Server injects its WebSocket reload snippet right before </body>.

Final Readiness Checklist ​

Before moving on, verify that these commands work cleanly in your terminal:

bash
code --version
git --version

All green? Proceed immediately to the Git & GitHub Student Workflow Guide to set up your developer portfolio!

G5 Plaza (Before AEDC Office, Sabon-Gari Road), Bwari, Abuja, Nigeria · info@techmindsacademy.org · (+234) 814 732 8332