Clean Architecture Example using FastAPI framework
MIT License
Example Application Interface using FastAPI framework in Python 3
This example showcases Repository Pattern in Hexagonal Architecture (also known as Clean Architecture). Here we have two Entities - Books and Authors, whose relationships have been exploited to create CRUD endpoint in REST under OpenAPI standard.
Install all the project dependency using Pipenv:
$ pipenv install --dev
Run the application from command prompt:
$ pipenv run uvicorn main:app --reload
You can also open a shell inside virtual environment:
$ pipenv shell
Open localhost:8000/docs
for API Documentation
Open localhost:8000/graphql
for GraphQL Documentation
Note: In case you are not able to access pipenv
from you PATH
locations, replace all instances of pipenv
with python3 -m pipenv
.
For Testing, unittest
module is used for Test Suite and Assertion, whereas pytest
is being used for Test Runner and Coverage Reporter.
$ pipenv run pytest
$ pipenv run pytest --cov-report xml --cov .
© MIT License