Some checks failed
- Fix MissingGreenlet: sync_engine now uses psycopg2 instead of asyncpg - Fix bcrypt/passlib compat: pin bcrypt<4.1 in requirements - Fix legacy password_hash NOT NULL: alter column to nullable in migration - Add frontend password validation (uppercase + lowercase + digit) - Add forgot-password and reset-password backend endpoints - Add forgot-password and reset-password frontend pages - Add email_service.py (SMTP via admin settings) - Add reset_token/reset_token_expires columns to User model - Migrate legacy JSON-only users to DB on password reset request - Mount data/ volume in docker-compose.local.yml for persistence - Add production deployment config (Dockerfile, nginx, deploy.sh) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
77 lines
934 B
Plaintext
77 lines
934 B
Plaintext
# Python
|
|
__pycache__/
|
|
*.py[cod]
|
|
*$py.class
|
|
*.so
|
|
.Python
|
|
build/
|
|
develop-eggs/
|
|
dist/
|
|
downloads/
|
|
eggs/
|
|
.eggs/
|
|
lib/
|
|
lib64/
|
|
parts/
|
|
sdist/
|
|
var/
|
|
wheels/
|
|
*.egg-info/
|
|
.installed.cfg
|
|
*.egg
|
|
|
|
# Virtual Environment
|
|
venv/
|
|
env/
|
|
ENV/
|
|
|
|
# Environment variables
|
|
.env
|
|
.env.docker
|
|
.env.production
|
|
.env.ionos
|
|
|
|
# Backups
|
|
backups/
|
|
|
|
# IDE
|
|
.vscode/
|
|
.idea/
|
|
*.swp
|
|
*.swo
|
|
|
|
# Uploads and outputs
|
|
uploads/
|
|
outputs/
|
|
temp/
|
|
translated_files/
|
|
translated_test.*
|
|
|
|
# Runtime data (users, provider config, glossaries) — managed at runtime, not in git
|
|
data/users.json
|
|
data/*.db
|
|
data/*.sqlite
|
|
|
|
# Keep these in git (templates/defaults only)
|
|
# data/provider_settings.json → commiter uniquement si pas de clés dedans
|
|
# data/pricing_overrides.json → OK à commiter
|
|
|
|
# Logs
|
|
*.log
|
|
logs/
|
|
|
|
# UV / UV lock
|
|
.venv/
|
|
uv.lock
|
|
|
|
# Test files (only at repo root; keep tests/ folder tracked)
|
|
/test_*.py
|
|
/test_*.ipynb
|
|
|
|
# macOS
|
|
.DS_Store
|
|
|
|
# Screenshots and debug files at root
|
|
*.png
|
|
*.jpg
|