feat: fix registration 500, add forgot-password flow, frontend validation
Some checks failed
Build and Deploy / Backend Tests (push) Has been cancelled
Build and Deploy / Frontend Build Check (push) Has been cancelled
Build and Deploy / Build Docker Images (push) Has been cancelled
Build and Deploy / Deploy to Server (push) Has been cancelled

- 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>
This commit is contained in:
Sepehr Ramezani
2026-05-01 16:23:51 +02:00
parent 26bd096a06
commit 2f7347b4db
25 changed files with 2765 additions and 64 deletions

75
.dockerignore Normal file
View File

@@ -0,0 +1,75 @@
# ============================================
# Docker Build Context Ignore
# ============================================
# Version control
.git
.gitignore
# IDE
.vscode
.idea
.claude
.cursor
.augment
.clinerules
.gemini
.opencode
.agents
.agent
# Python
.venv
__pycache__
*.pyc
*.pyo
*.egg-info
dist/
build/
# Node
frontend/node_modules
frontend/.next
# Environment files
.env
.env.*
!.env.example
# Docker (avoid recursive) — keep backend entrypoint and frontend server.js
docker/nginx/
docker/prometheus/
# Kubernetes
k8s/
# Runtime data
uploads/
outputs/
temp/
logs/
data/*.db
data/*.sqlite
# Test
tests/
frontend/src/test/
# Documentation
docs/
*.md
!README.md
# Landing page (separate project)
office-translator-landing-page/
# macOS
.DS_Store
# Backups
backups/
# Build artifacts
*.log
*.png
*.jpg