System Setup Guide
Install the tools you need for this project. Choose your operating system below.
Python 3.10+
Windows
Option A — Installer (recommended): 1. Go to https://www.python.org/downloads/ 2. Download Python 3.12.x 3. Run the installer — check "Add Python to PATH" at the bottom 4. Open Command Prompt or PowerShell and verify:
python --version
pip --version
Option B — winget (if you have Windows 10 1709+):
winget install Python.Python.3.12
Option C — WSL2 (best for this project): See "WSL2 Setup" below for a full Linux environment inside Windows.
macOS
Option A — Homebrew (recommended):
# Install Homebrew first (if you don't have it)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install Python
brew install python@3.12
# Verify
python3 --version
pip3 --version
Option B — Installer: 1. Go to https://www.python.org/downloads/ 2. Download Python 3.12.x for macOS 3. Run the installer
Linux (Ubuntu/Debian)
sudo apt update
sudo apt install python3.12 python3.12-venv python3-pip
python3.12 --version
Node.js 18+
Windows
winget install OpenJS.NodeJS.LTS
Or download from https://nodejs.org/ (LTS version)
macOS
brew install node
Linux
# Using Node Version Manager (recommended)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# Restart terminal, then:
nvm install 18
nvm use 18
Verify:
node --version
npm --version
Git
Windows
winget install Git.Git
Or download from https://git-scm.com/download/win
macOS
# Option A: Xcode Command Line Tools (includes git)
xcode-select --install
# Option B: Homebrew
brew install git
Linux
sudo apt install git
Verify:
git --version
VS Code (Code Editor)
Windows
winget install Microsoft.VisualStudioCode
macOS
brew install --cask visual-studio-code
Linux
sudo snap install code --classic
After installing, open VS Code and install these extensions (click the Extensions icon on the left, search and install each): - Python (ms-python.python) — syntax highlighting, linting - ES7+ React/Redux (dsznajder.es7-react-js-snippets) — React snippets - Prettier (esbenp.prettier-vscode) — auto-formatting
Expo Go (Mobile Testing)
- iOS: Install "Expo Go" from the App Store
- Android: Install "Expo Go" from Google Play Store
Your phone and computer must be on the same WiFi network.
Windows Subsystem for Linux (WSL2) — Windows Only
WSL2 gives you a full Linux terminal inside Windows. It avoids many Windows-specific Python issues.
Step 1: Install WSL2
Open PowerShell as Administrator and run:
wsl --install
Restart your computer when prompted.
Step 2: Launch Ubuntu
After restart, Ubuntu will launch and ask you to create a Linux username and password.
Step 3: Install Python and Node in WSL2
sudo apt update && sudo apt upgrade -y
sudo apt install python3.12 python3.12-venv python3-pip -y
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# Restart terminal, then:
nvm install 18
Step 4: Access Your Files
Your Windows files are at /mnt/c/. Navigate to your project:
cd /mnt/c/Users/YourName/path/to/aiproject
Step 5: VS Code + WSL2
In your WSL2 terminal, navigate to the project and run:
code .
This opens VS Code connected to WSL2 — you can edit files in Windows but run commands in the Linux terminal.
Why WSL2? Most tutorials and Stack Overflow answers assume Linux. WSL2 eliminates "it works on my machine" problems.
Docker (Optional — Alternative to Installing Python Directly)
Instead of installing Python on your machine, you can use Docker to run the backend in an isolated container. You'll still need Node.js for the mobile app.
Windows
winget install Docker.DockerDesktop
macOS
brew install --cask docker
Linux (Ubuntu/Debian)
sudo apt install docker.io docker-compose-v2
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
# Log out and back in for group changes to take effect
Verify:
docker --version
docker compose version
Verifying Everything
Run these commands and confirm they all return version numbers:
python3 --version # → Python 3.10+
pip3 --version # → pip 23+
node --version # → v18+
npm --version # → 9+
git --version # → 2.x+
code --version # → 1.x+
docker --version # → 24+ (if you installed Docker)
docker compose version # → 2.x+ (if you installed Docker)