Skip to content

FastAPI design patterns and building blocks to build an API

Notifications You must be signed in to change notification settings

Aavache/fastapi-designs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FastAPI Designs

This repository contains practical examples demonstrating various concepts and best practices for building powerful APIs using FastAPI. Each example showcases a specific aspect of API development and code samples to help you understand and implement these concepts effectively.

Installation

Install your dependencies with the following command:

pip install -r requirements.txt

Available Content

  1. Building blocks
    1. Pagination
    2. Error handling
    3. URL Versioning
    4. Header Versioning
    5. Caching
    6. Deprecation
    7. Decorator
    8. Decorator for auth
    9. Rate limitter
    10. Filtering and sorting
    11. Bulk operations
    12. Authentification
    13. WebHooks
    14. Async Polling
    15. Async Callback
    16. HATEOAS
    17. Singleton
    18. Content negotiation
    19. Strategy pattern
    20. Repository pattern
  2. APIs
    1. RESTful
    2. Message Queue
    3. RPC
    4. Event driven
    5. Hypermedia
    6. SOAP

Disclaimer

This repository shows some API patterns and building blocks in a simplified manner, therefore it can serve as inspiration for real-case applications however it is likely to require extra adaption, for instance, we use an in-memory dictionary to simulate a database for some cases.

References

The scripts in this repository are based on the following documentation:

  1. FastAPI documentation.
  2. Pika documentation.

About

FastAPI design patterns and building blocks to build an API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages