Prerequisites
Before setting up acodeaday, ensure you have the following tools installed on your machine.
Required Software
Node.js 22+
The frontend is built with React and requires Node.js 22 or higher.
Install:
- macOS:
brew install node@22 - Linux: Use nvm or official downloads
- Windows: Download from nodejs.org
Verify:
node --version # Should show v22.x.x or higher
npm --versionPython 3.12+
The backend is built with FastAPI and requires Python 3.12 or higher.
Install:
- macOS:
brew install python@3.12 - Linux: Use your package manager or pyenv
- Windows: Download from python.org
Verify:
python3 --version # Should show 3.12.x or higheruv (Python Package Manager)
acodeaday uses uv for fast, reliable Python dependency management.
Install:
curl -LsSf https://astral.sh/uv/install.sh | shOr using pip:
pip install uvVerify:
uv --versionDocker & Docker Compose
Docker is required to run Judge0, the code execution engine.
Install:
- macOS: Docker Desktop for Mac
- Linux: Docker Engine + Docker Compose
- Windows: Docker Desktop for Windows
Verify:
docker --version
docker-compose --versionSupabase Setup
You need a PostgreSQL database for acodeaday. We recommend Supabase (free tier available).
Option 1: Supabase Cloud (Recommended)
- Go to supabase.com and create a free account
- Create a new project
- Note your project URL and API keys from Settings > API
- Note your database connection string from Settings > Database
You'll need these values for your .env file:
DATABASE_URL(Direct connection string)SUPABASE_URL(Project URL)SUPABASE_KEY(anon/public key)
Option 2: Local Supabase (Advanced)
For local development, you can run Supabase locally:
# Install Supabase CLI
brew install supabase/tap/supabase # macOS
# or
npm install -g supabase # Cross-platform
# Initialize in your project
cd acodeaday
supabase init
# Start local Supabase
supabase startLocal Supabase runs on:
- API:
http://localhost:54321 - DB:
postgresql://postgres:postgres@localhost:54322/postgres
Optional Tools
Git
For version control and cloning the repository.
git --versionInstall from git-scm.com if not already installed.
Postman or curl
For testing API endpoints during development.
VS Code
Recommended editor with extensions:
- Python
- ESLint
- Prettier
- Docker
System Requirements
Minimum:
- 4 GB RAM
- 2 CPU cores
- 5 GB free disk space
Recommended:
- 8 GB RAM
- 4 CPU cores
- 10 GB free disk space (for Docker images)
Network Requirements
The following ports must be available:
8000- FastAPI backend5173- Frontend dev server2358- Judge0 API5432- PostgreSQL (if using local Supabase)54321- Supabase API (if using local Supabase)
Next Steps
Once you have all prerequisites installed, proceed to: