Skip to content

Prerequisites

This page lists all the software and tools you need to develop AccessALI.

System Requirements

Hardware

  • CPU: 4+ cores recommended
  • RAM: 8GB minimum, 16GB recommended
  • Storage: 10GB free space

Operating Systems

  • macOS 12+ (Monterey or later)
  • Windows 10/11 with WSL 2
  • Linux (Ubuntu 20.04+, Debian 11+, Fedora 36+)

Required Software

Node.js

AccessALI requires Node.js 20 LTS or higher.

Installation:

# Using Homebrew
brew install node@20

# Or using nvm (recommended)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install 20
nvm use 20
# Using Chocolatey
choco install nodejs-lts

# Or using nvm-windows
# Download from: https://github.com/coreybutler/nvm-windows/releases
nvm install 20
nvm use 20
# Using nvm (recommended)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install 20
nvm use 20

# Or using package manager (Ubuntu/Debian)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs

Verify:

node --version  # Should show v20.x.x
npm --version   # Should show 10.x.x

pnpm

AccessALI uses pnpm 10.10.0 as the package manager.

Installation:

# Enable Corepack (built into Node.js 16.13+)
corepack enable

# Activate specific pnpm version
corepack prepare pnpm@10.10.0 --activate
npm install -g pnpm@10.10.0
brew install pnpm

Verify:

pnpm --version  # Should show 10.10.0

Git

Installation:

# Usually pre-installed, or:
brew install git
# Using Chocolatey
choco install git

# Or download from: https://git-scm.com/download/win
# Ubuntu/Debian
sudo apt-get install git

# Fedora
sudo dnf install git

Verify:

git --version  # Should show 2.x.x

Configure:

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

Docker Desktop

For macOS and Windows users, Docker Desktop is the easiest option.

Installation:

  1. Download Docker Desktop for Mac
  2. Install the .dmg file
  3. Start Docker Desktop from Applications
  4. Wait for the Docker icon in menu bar to show "Running"
  1. Enable WSL 2:
    wsl --install
    
  2. Download Docker Desktop for Windows
  3. Install and restart
  4. Ensure "Use WSL 2 based engine" is checked in Settings

Verify:

docker --version         # Should show 24.x.x or higher
docker-compose --version # Should show 2.x.x or higher

Docker Engine (Linux)

For Linux users, install Docker Engine directly.

# Remove old versions
sudo apt-get remove docker docker-engine docker.io containerd runc

# Install prerequisites
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

# Add Docker's official GPG key
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Set up repository
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Install Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Add user to docker group (avoid sudo)
sudo usermod -aG docker $USER
newgrp docker
# Install prerequisites
sudo dnf -y install dnf-plugins-core

# Add Docker repository
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

# Install Docker Engine
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Start Docker
sudo systemctl start docker
sudo systemctl enable docker

# Add user to docker group
sudo usermod -aG docker $USER
newgrp docker

Verify:

docker run hello-world

Local Setup (Optional)

If you prefer local development without Docker:

PostgreSQL 16

# Using Homebrew
brew install postgresql@16
brew services start postgresql@16

# Create database
createdb accessali_dev
  1. Download PostgreSQL installer
  2. Run installer and follow wizard
  3. Remember the password you set for postgres user
  4. Add C:\Program Files\PostgreSQL\16\bin to PATH
# Add PostgreSQL repository
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

# Install PostgreSQL
sudo apt-get update
sudo apt-get install postgresql-16

# Create database
sudo -u postgres createdb accessali_dev

Alternative: Neon DB (Serverless)

Use Neon DB for a managed PostgreSQL database:

  1. Sign up at neon.tech
  2. Create a new project
  3. Copy the connection string
  4. Use it in your .env.local file

Redis 7 (Optional)

Redis is optional but recommended for caching.

brew install redis
brew services start redis

Use WSL 2 or Memurai (Redis for Windows)

# Ubuntu/Debian
sudo apt-get install redis-server
sudo systemctl start redis-server

Alternative: Upstash Redis

Use Upstash for serverless Redis:

  1. Sign up at upstash.com
  2. Create a Redis database
  3. Copy the connection URL
  4. Use it in your .env.local file

Development Tools

Download from code.visualstudio.com

Recommended Extensions:

Install these extensions for the best experience:

{
  "recommendations": [
    "dbaeumer.vscode-eslint",
    "esbenp.prettier-vscode",
    "bradlc.vscode-tailwindcss",
    "prisma.prisma",
    "ms-azuretools.vscode-docker",
    "eamodio.gitlens",
    "streetsidesoftware.code-spell-checker"
  ]
}

Install all recommended extensions:

  1. Open VS Code
  2. Press Cmd+Shift+P (macOS) or Ctrl+Shift+P (Windows/Linux)
  3. Type "Extensions: Show Recommended Extensions"
  4. Click "Install All"

Database Clients

Choose one for viewing and managing the database:

Prisma Studio (Built-in, recommended)

pnpm docker:db:studio  # Docker
pnpm db:studio         # Local

TablePlus (macOS, Windows, Linux) - Beautiful UI - Multi-database support - Free tier available

pgAdmin (Free, open-source) - Full-featured - Web-based interface

Verification

After installing prerequisites, verify your setup:

# Check versions
node --version    # v20.x.x
pnpm --version    # 10.10.0
git --version     # 2.x.x
docker --version  # 24.x.x (if using Docker)

# Clone repository (test)
git clone https://github.com/stratpoint-engineering/poc-access-ali.git
cd poc-access-ali

# Install dependencies (test)
cd src
pnpm install

Next Steps

Choose your installation method:

Or jump to the Quick Start Guide