|
1 |
| -drf-friend is a collection of utilities and enhancements for Django Rest Framework (DRF), aiming to simplify and streamline the process of building RESTful APIs. It provides convenience functions, tools, and patterns to help developers write clean, efficient, and maintainable code when working with DRF. |
2 |
| - |
3 |
| - Features: |
4 |
| - |
5 |
| - - Enhanced core components for common tasks in API development. |
6 |
| - - Customized Django Rest Framework core classes for improved functionality. |
7 |
| - - Utility functions and mixins to handle common API patterns. |
8 |
| - - Simplifies pagination, routing, and data serialization tasks. |
9 |
| - |
10 |
| -Check the project repository for detailed documentation, examples, and updates: https://github.com/code4mk/django-petra |
11 |
| -* Doc: https://django-petra.code4mk.org |
12 |
| - |
| 1 | +# Django Petra |
| 2 | + |
| 3 | +Django Petra is a powerful collection of utilities and enhancements for Django Rest Framework (DRF), designed to streamline the process of building RESTful APIs. It provides convenience functions, tools, and patterns to help developers write clean, efficient, and maintainable code. |
| 4 | + |
| 5 | +## Features |
| 6 | + |
| 7 | +### Core Functionality |
| 8 | +- Enhanced DRF core components for common API development tasks |
| 9 | +- Customized base classes with improved functionality |
| 10 | +- Utility functions and mixins for common API patterns |
| 11 | +- Simplified pagination, routing, and data serialization |
| 12 | + |
| 13 | +### File Storage |
| 14 | +- Flexible storage system supporting both local and S3 storage |
| 15 | +- Easy file operations (put, get, delete, update, etc.) |
| 16 | +- Temporary URL generation for S3 |
| 17 | +- Directory listing and file management |
| 18 | + |
| 19 | +### Email Management |
| 20 | +- Enhanced email sending capabilities |
| 21 | +- HTML template support with inline CSS |
| 22 | +- Queue-based email sending using Celery |
| 23 | +- Attachment support including inline images |
| 24 | + |
| 25 | +### CORS Handling |
| 26 | +- Comprehensive CORS middleware |
| 27 | +- Configurable CORS settings |
| 28 | +- Origin whitelist and regex support |
| 29 | +- Preflight request handling |
| 30 | + |
| 31 | +### API Logging |
| 32 | +- Automatic API request/response logging |
| 33 | +- Performance metrics tracking |
| 34 | +- Client IP tracking |
| 35 | +- Detailed request/response information storage |
| 36 | + |
| 37 | +### Task Scheduling |
| 38 | +- Celery integration for background tasks |
| 39 | +- Flexible scheduling patterns (cron-style) |
| 40 | +- Various scheduling intervals (seconds to yearly) |
| 41 | +- Queue management |
| 42 | + |
| 43 | +### Database Utilities |
| 44 | +- Raw query helpers |
| 45 | +- Custom model managers |
| 46 | +- Soft delete functionality |
| 47 | +- Time-stamped model mixins |
| 48 | + |
0 commit comments