2025-01-24 10:00:46 +01:00
2025-01-24 10:00:46 +01:00
2025-01-24 09:39:17 +01:00
2025-01-24 09:39:17 +01:00
2025-01-24 10:00:46 +01:00
2025-01-24 09:39:17 +01:00
2025-01-24 09:39:17 +01:00
2025-01-24 09:42:52 +01:00
2025-01-24 09:39:17 +01:00

API template with Clean Architecture

This is a template for building APIs with Clean Architecture. It contains two examples of APIs built with FastAPI and Flask.

  • src contains the source code.
  • src/core: business logic (use cases, entities, decorators...).
  • src/infra: implementations of the interfaces defined in the core.
  • src/infra/api/fastapi: FastAPI implementation.
  • src/infra/api/flask: Flask implementation.
  • src/infra/storage/: Fake storage implementation.

Requirements

  • Docker

Prepare

make build network

Run FastAPI

make api.fastapi.run

Now, you can test the API with the following command:

curl -X 'GET' 'http://localhost:8000/api/v1/documents/?appName=app_test&clientId=client_test' -H 'accept: application/json' | jq

Run Flask

make api.flask.run

Now, you can test the API with the following command:

curl -X 'GET' 'http://localhost:5000/api/v1/documents/?appName=app_test&clientId=client_test' -H 'accept: application/json' | jq
Description
No description provided
Readme 37 KiB
Languages
Python 88.2%
Dockerfile 6.4%
Makefile 5.4%