Get Chronos up and running in minutes!
The easiest way to run Chronos - perfect for production!
- Docker Desktop installed
- At least 2GB free RAM
- At least 5GB free disk space
# Clone repository
git clone https://github.com/yourusername/chronos.git
cd chronos
# Copy environment file
cp .env.example .env
# Deploy with Docker Compose
docker-compose up -d --build- Frontend: http://localhost
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
# Linux/Mac
./docker-deploy.sh start
# Windows PowerShell
.\docker-deploy.ps1 start# View status
docker-compose ps
# View logs
docker-compose logs -f
# Stop services
docker-compose down
# Restart services
docker-compose restartFor development and debugging.
- Node.js v18+ and npm
- Python 3.12+
- uv (Python package manager)
- MySQL 8.0+ (or SQLite)
cd Chronos-backend
# Install uv
pip install uv
# Install dependencies
uv sync
# Configure database
cp config/.secrets.toml.example config/.secrets.toml
# Edit config/.secrets.toml
# (Optional) Seed database
uv run python -m src.scripts.seed
# Start backend
uv run uvicorn src.main:app --reloadBackend runs at http://localhost:8000
cd Chronos-frontend
# Install dependencies
npm install
# Start development server
npm startFrontend runs at http://localhost:4200
MySQL (Default)
# In config/settings.toml
DB_TYPE = "mysql"SQLite (Quick Start)
# In config/settings.toml
DB_TYPE = "sqlite"
DB_NAME = "chronos.db"Edit .env file for Docker:
# Database
MYSQL_ROOT_PASSWORD=your_secure_password
MYSQL_DATABASE=chronos
MYSQL_USER=chronos
MYSQL_PASSWORD=your_secure_password
# Ports
FRONTEND_PORT=80
BACKEND_PORT=8000
MYSQL_PORT=3306# Docker
docker-compose ps
# Or use deployment script
./docker-deploy.sh status# Health check
curl http://localhost:8000/health
# API documentation
open http://localhost:8000/docsOpen browser and navigate to:
- Docker: http://localhost
- Local dev: http://localhost:4200
# Change ports in .env
FRONTEND_PORT=8080
BACKEND_PORT=8001
MYSQL_PORT=3307# Check if MySQL is running
docker-compose ps database
# Restart database
docker-compose restart database# Check backend connection
curl http://localhost:8000
# Clear browser cache
# Or use incognito mode# Clean build cache
docker-compose down
docker builder prune
# Rebuild
docker-compose up -d --build- Full Documentation
- Docker Deployment Guide
- Backend Documentation
- Frontend Documentation
- Contributing Guide
- Check FAQ
- Read troubleshooting guide
- Open GitHub Issue
Ready to start building with Chronos! 🎉