β‘Quick Start: Running locally w/o Docker (on MacOS or Linux)
This guide walks you through setting up the UpGrade locally using Node.js and PostgreSQL, without Docker. The steps are intentionally simple and linear so that anyone can complete the setup smoothly.
1. Install Node.js (via nvm)
UpGrade currently uses Node v22.14.0 for both development and build compatibility.
# Install nvm (Node Version Manager)curl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh|bash# Load nvm into the current shellsource~/.zshrc# or ~/.bashrc depending on your shell# Install Node v22.14.0nvminstall22.14.0# Use that versionnvmuse22.14.0# Verifynode-v# v22.14.0npm-v
2. Install PostgreSQL
We recommend Postgres.app on macOS because it is the simplest and most reliable way to run PostgreSQL locally.
git clone https://github.com/CarnegieLearningWeb/UpGrade.git
cd UpGrade
# Root
npm ci
# Backend root
cd backend
npm ci
# Types package
cd ../types
npm ci
cp -R . ../backend/packages/Upgrade/types # copy types into backend package
# Backend Upgrade package
cd ../backend/packages/Upgrade
npm ci
# Frontend
cd ../../../frontend
npm ci
cd ..