Quickstart Guide
Get Running Days up and running in 5 minutes.
Prerequisites
- Node.js 22+
- pnpm 9+
- Docker (optional, for full stack)
Installation
Clone and Install
bash
git clone https://github.com/alexcedergren/running-days.git
cd running-days
pnpm installEnvironment Setup
Copy the example environment file:
bash
cp .env.example .envKey environment variables:
bash
# API Configuration
PORT=3000
DATABASE_PATH=data/running-days.db
JWT_SECRET=your-secret-at-least-32-characters
# Apple Sign-In (required in production)
APPLE_CLIENT_ID=
APPLE_TEAM_ID=
APPLE_KEY_ID=
APPLE_PRIVATE_KEY=Development
Start All Services
bash
pnpm devThis starts:
- API server on
http://localhost:3000 - Web dashboard on
http://localhost:5173
Start Individual Services
bash
# API only
pnpm --filter @running-days/api dev
# Web dashboard only
pnpm --filter @running-days/web devDocker Development
For a production-like environment:
bash
docker compose upServices:
- API:
http://localhost:3000 - Web:
http://localhost:3001
With Observability Stack
bash
docker compose -f docker-compose.yml -f docker-compose.observability.yml upAdds:
- Grafana:
http://localhost:3002(admin/admin) - Prometheus:
http://localhost:9090 - Loki:
http://localhost:3100
Testing
bash
# Run all tests
pnpm test
# Run with coverage
pnpm test:coverage
# Run E2E tests
pnpm --filter @running-days/web test:e2eBuilding
bash
# Build all packages and apps
pnpm build
# Build specific app
pnpm --filter @running-days/api buildNext Steps
- Architecture Overview - Understand the system design
- API Reference - Explore the REST API
- Contributing Guide - Start contributing