ab65a8b768
Implement real SMTP delivery and transactional email auth flow
...
CI / test (push) Successful in 21s
Email delivery:
- Replaced logging-only email sender with aiosmtplib SMTP implementation.
- Added provider mode switch via EMAIL_PROVIDER (log/smtp).
- Added TLS/SSL and timeout controls for SMTP transport.
Auth registration flow:
- Made register/resend/reset email flows transactional with rollback on delivery failure.
- Return 503 when verification/reset email cannot be delivered.
Configuration:
- Extended settings and env templates for EMAIL_PROVIDER, SMTP_USE_SSL, SMTP_TIMEOUT_SECONDS.
- Updated docker-compose environment mapping for new SMTP variables.
2026-03-07 22:24:22 +03:00
683c8a49e2
Parameterize docker-compose for server deployment
...
CI / test (push) Successful in 20s
Compose settings:
- Reworked docker-compose.yml to use environment-variable driven configuration.
- Added shared app env anchors for backend and worker to reduce duplication.
- Made ports, credentials, security limits, SMTP, and storage options configurable.
Production profile:
- Added docker-compose.prod.yml override to close internal service ports.
- Keeps external attack surface minimal for Linux server deployments.
Docs and ops:
- Added .env.docker.example with full variable set for server setup.
- Updated README with quick-start and production launch commands.
2026-03-07 21:58:21 +03:00
2501466c7a
Add web client and containerized deployment stack
...
CI / test (push) Successful in 19s
Web client:
- Added React + TypeScript + Vite + Tailwind application in web/.
- Implemented auth, chat list, chat messages, typing indicators, file uploads, and voice recording/playback.
- Added typed API layer, Zustand stores, and realtime websocket hook integration.
Containerization:
- Added backend Dockerfile and project .dockerignore.
- Added web multi-stage Dockerfile with nginx static hosting and API/WS reverse proxy.
- Added full docker-compose stack with postgres, redis, minio, backend, worker, mailpit, and web.
- Added MinIO bucket bootstrap init job and updated README with Docker quick-start.
2026-03-07 21:55:50 +03:00
85631b566a
Implement security hardening, notification pipeline, and CI test suite
...
CI / test (push) Successful in 9m2s
Security hardening:
- Added IP/user rate limiting with Redis-backed counters and fail-open behavior.
- Added message anti-spam controls (per-chat rate + duplicate cooldown).
- Implemented refresh token rotation with JTI tracking and revoke support.
Notification pipeline:
- Added Celery app and async notification tasks for mention/offline delivery.
- Added Redis-based presence tracking and integrated it into realtime connect/disconnect.
- Added notification dispatch from message flow and notifications listing endpoint.
Quality gates and CI:
- Added pytest async integration tests for auth and chat/message lifecycle.
- Added pytest config, test fixtures, and GitHub Actions CI workflow.
- Fixed bcrypt/passlib compatibility by pinning bcrypt version.
- Documented worker and quality-gate commands in README.
2026-03-07 21:46:30 +03:00