forked from cardosofelipe/fast-next-template
Infrastructure: - Add Redis and Celery workers to all docker-compose files - Fix celery migration race condition in entrypoint.sh - Add healthchecks and resource limits to dev compose - Update .env.template with Redis/Celery variables Backend Models & Schemas: - Rename Sprint.completed_points to velocity (per requirements) - Add AgentInstance.name as required field - Rename Issue external tracker fields for consistency - Add IssueSource and TrackerType enums - Add Project.default_tracker_type field Backend Fixes: - Add Celery retry configuration with exponential backoff - Remove unused sequence counter from EventBus - Add mypy overrides for test dependencies - Fix test file using wrong schema (UserUpdate -> dict) Frontend Fixes: - Fix memory leak in useProjectEvents (proper cleanup) - Fix race condition with stale closure in reconnection - Sync TokenWithUser type with regenerated API client - Fix expires_in null handling in useAuth - Clean up unused imports in prototype pages - Add ESLint relaxed rules for prototype files CI/CD: - Add E2E testing stage with Testcontainers - Add security scanning with Trivy and pip-audit - Add dependency caching for faster builds Tests: - Update all tests to use renamed fields (velocity, name, etc.) - Fix 14 schema test failures - All 1500 tests pass with 91% coverage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
63 lines
2.2 KiB
Plaintext
63 lines
2.2 KiB
Plaintext
# Common settings
|
|
PROJECT_NAME=Syndarix
|
|
VERSION=1.0.0
|
|
|
|
# Database settings
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=postgres
|
|
POSTGRES_DB=syndarix
|
|
POSTGRES_HOST=db
|
|
POSTGRES_PORT=5432
|
|
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
|
|
|
|
# Redis settings (cache, pub/sub, Celery broker)
|
|
REDIS_URL=redis://redis:6379/0
|
|
|
|
# Celery settings (optional - defaults to REDIS_URL if not set)
|
|
# CELERY_BROKER_URL=redis://redis:6379/0
|
|
# CELERY_RESULT_BACKEND=redis://redis:6379/0
|
|
|
|
# Backend settings
|
|
BACKEND_PORT=8000
|
|
# CRITICAL: Generate a secure SECRET_KEY for production!
|
|
# Generate with: python -c 'import secrets; print(secrets.token_urlsafe(32))'
|
|
# Must be at least 32 characters
|
|
SECRET_KEY=your_secret_key_here_REPLACE_WITH_GENERATED_KEY_32_CHARS_MIN
|
|
ENVIRONMENT=development
|
|
DEMO_MODE=false
|
|
DEBUG=true
|
|
BACKEND_CORS_ORIGINS=["http://localhost:3000"]
|
|
FIRST_SUPERUSER_EMAIL=admin@example.com
|
|
# IMPORTANT: Use a strong password (min 12 chars, mixed case, digits)
|
|
# Default weak passwords like 'Admin123' are rejected
|
|
FIRST_SUPERUSER_PASSWORD=YourStrongPassword123!
|
|
|
|
# OAuth Configuration (Social Login)
|
|
# Set OAUTH_ENABLED=true and configure at least one provider
|
|
OAUTH_ENABLED=false
|
|
OAUTH_AUTO_LINK_BY_EMAIL=true
|
|
|
|
# Google OAuth (from Google Cloud Console > APIs & Services > Credentials)
|
|
# https://console.cloud.google.com/apis/credentials
|
|
# OAUTH_GOOGLE_CLIENT_ID=your-google-client-id.apps.googleusercontent.com
|
|
# OAUTH_GOOGLE_CLIENT_SECRET=your-google-client-secret
|
|
|
|
# GitHub OAuth (from GitHub > Settings > Developer settings > OAuth Apps)
|
|
# https://github.com/settings/developers
|
|
# OAUTH_GITHUB_CLIENT_ID=your-github-client-id
|
|
# OAUTH_GITHUB_CLIENT_SECRET=your-github-client-secret
|
|
|
|
# OAuth Provider Mode (Authorization Server for MCP/third-party clients)
|
|
# Set OAUTH_PROVIDER_ENABLED=true to act as an OAuth 2.0 Authorization Server
|
|
OAUTH_PROVIDER_ENABLED=false
|
|
# IMPORTANT: Must be HTTPS in production!
|
|
OAUTH_ISSUER=http://localhost:8000
|
|
|
|
# Frontend settings
|
|
FRONTEND_PORT=3000
|
|
FRONTEND_URL=http://localhost:3000
|
|
NEXT_PUBLIC_API_URL=http://localhost:8000
|
|
NEXT_PUBLIC_API_BASE_URL=http://localhost:8000
|
|
NEXT_PUBLIC_APP_URL=http://localhost:3000
|
|
NODE_ENV=development
|