All checks were successful
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.
44 lines
896 B
Markdown
44 lines
896 B
Markdown
# Benya Messenger
|
|
|
|
Backend foundation for a Telegram-like real-time messaging platform.
|
|
|
|
## Run
|
|
|
|
1. Create and activate Python 3.12 virtualenv.
|
|
2. Install dependencies:
|
|
pip install -r requirements.txt
|
|
3. Configure environment from `.env.example`.
|
|
4. Start API:
|
|
uvicorn app.main:app --reload --port 8000
|
|
|
|
## Celery Worker
|
|
|
|
Run worker for async notification jobs:
|
|
|
|
celery -A app.celery_app:celery_app worker --loglevel=info
|
|
|
|
## Quality Gates
|
|
|
|
- Compile check:
|
|
python -m compileall app main.py
|
|
- Tests:
|
|
pytest -q
|
|
|
|
## Web Client
|
|
|
|
1. cd web
|
|
2. copy `.env.example` to `.env`
|
|
3. npm install
|
|
4. npm run dev
|
|
|
|
## Docker Quick Start
|
|
|
|
Run full stack (web + api + worker + postgres + redis + minio + mailpit):
|
|
|
|
1. docker compose up --build
|
|
2. Open:
|
|
- Web: http://localhost
|
|
- API docs: http://localhost:8000/docs
|
|
- Mailpit UI: http://localhost:8025
|
|
- MinIO console: http://localhost:9001
|