Django Easy API - Easy and Fast Django REST framework based on Django-ninja-extra
Project description
Django Easy API Framework
Easy and Fast Django REST framework based on Django-ninja-extra
- Auto CRUD Async API generation for all django models, configurable via Meta class
- Domain/Service/Controller base structure for better code organization
- Base Permission/Response/Exception classes and more to come
- Pure class based Django-Ninja APIs, based on Django-Ninja-extra
Django-Ninja features :
Easy: Designed to be easy to use and intuitive.
FAST execution: Very high performance thanks to Pydantic and async support.
Fast to code: Type hints and automatic docs lets you focus only on business logic.
Standards-based: Based on the open standards for APIs: OpenAPI (previously known as Swagger) and JSON Schema.
Django friendly: (obviously) has good integration with the Django core and ORM.
Plus Extra:
Class Based: Design your APIs in a class based fashion.
Permissions: Protect endpoint(s) at ease with defined permissions and authorizations at route level or controller level.
Dependency Injection: Controller classes supports dependency injection with python Injector or django_injector. Giving you the ability to inject API dependable services to APIController class and utilizing them where needed
Requirements
- Python >= 3.6
- Django >= 3.1
- pydantic >= 1.6
- Django-Ninja-extra >= 0.15.0
Install
pip install django-api-framework
Then add "easy" to your django INSTALLED_APPS:
[
...,
"easy",
...,
]
Get your admin api up and running:
api_admin_v1 = EasyAPI(
urls_namespace="admin_api",
version="v1.0.0",
)
# Automatic Admin API generation
api_admin_v1.auto_create_admin_controllers()
Please check tests/demo_app for more.
Boilerplate Django project
A boilerplate Django project for quickly getting started: https://github.com/freemindcore/django-easy-api
Note: this project is still in early stage, comments and advices are highly appreciated.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-api-framework-0.1.23.tar.gz
(679.3 kB
view hashes)
Built Distribution
Close
Hashes for django-api-framework-0.1.23.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b023f2111a8581a4048cc5aec836b8b22266f2520f0a44dcc5bb10bbb3f0885 |
|
MD5 | bec38c4938c0e57acb4828b38968e2b6 |
|
BLAKE2b-256 | 759ee634ac5ac01ce4957f0d5ed01b0b2934ee3953f419bd25dd0ccb63bc01ca |
Close
Hashes for django_api_framework-0.1.23-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1047a89bdfeb3eb1df4dbd76485f0c113c428a821923d8cd17a07f754ec68cc5 |
|
MD5 | 6212010fe5daa3ba63a143cfb9d1915a |
|
BLAKE2b-256 | 584f6480de050cf8ccbdee6e5e82b238c993981d9c63aa004e9480cc9f7bf0e6 |