Rapide à apprendre, rapide à coder, rapide à exécuter
Django Shinobi - Framework REST Django rapide
Django Shinobi est un framework web pour construire des API avec Django et les annotations de type Python 3.6+.
C'est un fork de la fantastique bibliothèque Django Ninja axé sur les fonctionnalités et corrections souhaitées par la communauté. Consultez la liste des différences si vous venez de Ninja, ainsi que la feuille de route !
Fonctionnalités clés :
- Facile : Conçu pour être simple à utiliser et intuitif.
- Exécution RAPIDE : Très haute performance grâce à Pydantic et au support async.
- Rapide à coder : Les annotations de type et la documentation automatique vous permettent de vous concentrer uniquement sur la logique métier.
- Basé sur des standards : Basé sur les standards ouverts pour les API : OpenAPI (anciennement Swagger) et JSON Schema.
- Compatible Django : (évidemment) bonne intégration avec le cœur de Django et l'ORM.
- Prêt pour la production : Le projet Ninja original est utilisé par plusieurs entreprises sur des projets en production.

Documentation : https://pmdevita.github.io/django-shinobi
Installation
Dans votre projet Django, ajoutez Django Shinobi.
pip install django-shinobi
ou démarrer un nouveau projet.pip install django django-shinobi
django-admin startproject apidemoUtilisation
Dans votre projet Django, à côté de urls.py, créez un nouveau fichier appelé api.py.
from ninja import NinjaAPIapi = NinjaAPI()
@api.get("/add")
def add(request, a: int, b: int):
return {"result": a + b}
Now go to urls.py and add the following:
``Python hl_lines="3 7"
...
from .api import api
urlpatterns = [ path("admin/", admin.site.urls), path("api/", api.urls), # <---------- ! ]
shell python manage.py runsever ``C'est tout !/api/addVous venez de créer une API qui :
- reçoit une requête HTTP GET sur
aprend, valide et convertit les paramètres GET etbdécode le résultat en JSON génère un schéma OpenAPI pour l'opération définie Documentation interactive de l'API
Lancez votre projet Django
Allez maintenant sur http://127.0.0.1:8000/api/docs
Vous verrez la documentation API interactive automatique (fournie par Swagger UI ou Redoc) :

Et ensuite ?
- Lisez la documentation complète ici - https://pmdevita.github.io/django-shinobi
- Pour soutenir ce projet, veuillez lui donner une étoile sur Github.

- Partagez-le via Twitter
- Partagez vos retours et discutez du développement sur Discord https://discord.gg/ntFTXu7NNv
