Example chat API for sending messages from one user to another
-
Run application
docker-compose up --build
-
Seed database
docker exec -it example-chat-api_api_1 bash
python manage.py seed_db
-
Navigate to http://localhost:5000/ for documentation
- Install
pip install -r requirements.txt
- Run tests
pytest
- Python3.9+ - Programming language
- Flask - Web framework
- Flask-RESTX - Framework extension for building a REST API
- Flask-SQLAlchemy - SQLAlchemy ORM for Flask
- Docker - Containerization: build, ship, run anywhere
- Pytest - π Testing framework
- Pytest-Cov - Coverage report plugin
- Black - Uncompromising code formatter
- Isort - Import formatter
- Run
docker-compose up --build
- Swagger docs containing sample requests and responses will be served at
http://localhost:5000/
- Document expected payloads in Swagger docs
- Marshal request and response payloads
- Leverage UUIDs instead of passing around primary_key INT IDs
- Separate DB from API
- Expand tests
- Implement Auth
- Leverage production ready WSGI server
- Convert REST API to GraphQL for general requests
- Leverage sockets for live updates on incoming messages