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.
- Run the following command to initiate test:
$ pipenv run pytest
- To include Coverage Reporting as well:
$ pipenv run pytest --cov-report xml --cov .
© MIT License