A set of production-ready asynchronous endpoints tested and built for blogs and portfolio websites.
- FastAPI
- SQLAlchemy 2.0 Models and ORM using AsyncSession and Async DB Statements
- Alembic with automatic Models Migration
- Pydantic with custom validation and Settings
- OAuth2 Authentication
- JWT
- CORS
- Uvicorn and Gunicorn for Python web server
- TestClient for texting.
- Asynchronous CRUD endpoints for blog posts and categories
- Asynchronous CRUD endpoints for contacts
- Asynchronous CRUD endpoints for user accounts
- Asynchronous endpoints for user authentication
- Production ready settings file using Pydantic
- Migrations using Alembic
- Secure password hashing by default.
- JWT token authentication.
Use the package manager pip for installation.
- python -m venv venv
- source venv/bin/activate
- pip install -r requirements.txt
- cd fastapi-async-blog
- alembic revision --autogenerate -m "Init"
- alembic upgrade head
- uvicorn main:app --reload
Pull requests and contributions are welcome. For major changes, please open an issue first to discuss what you would like to change. Ensure to follow the guidelines and update tests as appropriate.
All thanks to Tiangolo, I found the Project Generation - Template incredibly helpful.
For an in-depth understanding of FastAPI or any of the tools used here including questions and collaborations, you can reach out to me.
If you have any question or want to reach me directly, Contact Nsikak Imoh.