Skip to content

Onboarding

Prerequisites

  • Python 3.11+
  • Node.js 18+ (for frontend tooling)
  • PostgreSQL 14+
  • Git

Repository Setup

1. Clone Repositories

# Backend
git clone git@github.com:JuanAnt0ni0/saas-courier-backend.git
cd saas-courier-backend

# Frontend
git clone git@github.com:JuanAnt0ni0/saas-courier-fronted.git
cd saas-courier-fronted

# Documentation
git clone git@github.com:JuanAnt0ni0/saas-courier-docs.git
cd saas-courier-docs

2. Install Dependencies

Backend:

cd saas-courier-backend
uv sync

Frontend:

cd saas-courier-fronted
uv sync


Environment Setup

Backend (.env)

# Required
DATABASE_URL=postgresql://user:pass@localhost:5432/saas_courier
SECRET_KEY=your-secret-key-min-32-chars

# Optional
RESEND_API_KEY=your-resend-api-key
AERODATABOX_API_KEY=your-rapidapi-key

Frontend (.env)

API_BASE_URL=http://localhost:8080
WS_BASE_URL=ws://localhost:8080
SESSION_TIMEOUT_MINUTES=15

Database Setup

# Run migrations
cd saas-courier-backend
uv run alembic upgrade head

# Seed test data (optional)
uv run python scripts/seed_data.py

Test Credentials

Role Email Password
Admin admin@courierflow.com admin
Courier courier@courierflow.com admin

Running Locally

Backend:

cd saas-courier-backend
uv run uvicorn main:app --reload --port 8080

Frontend:

cd saas-courier-fronted
uv run flet -r


Verification

# Backend health check
curl http://localhost:8080/

# Should return:
# {"status":"healthy","version":"1.0.0","timestamp":"..."}

# Run tests
cd saas-courier-backend && uv run pytest tests/ -x -q
cd saas-courier-fronted && uv run pytest test/ -x -q

Next Steps

  1. Read the Architecture documentation
  2. Review the API Contract
  3. Check the Development Guide