- Handling requests containing serialized data and media files e.g. using JSON/MultiPartParser.
- Implementing custom object managers, extending object-model methods.
- Registering/customizing models on the admin interface, automatically populating slug fields based on corresponding name fields.
- Serializing/Deserializing objects, handling many-to-many-field in creation and updates.
- Implementing and handling per-view caching on object retrieval, updates, and deletion.
- Setting up appropriate session storage, CRUD operations on request session data (cart data and refresh tokens are currently stored in session).
- Properly leveraging app names and namespaces for Namespace versioning.
- Configuration for media uploads in settings.
- Setting up cloudinary for image uploads and handling related operations e.g. image deletion from database.
- Understanding and extending rest_framework's exception handlers to customize error responses.
- Understanding and implementing tests using django/drf test suite to ensure endpoints work as intended.
- Understanding and customizing django's middleware/context processors to handle manually blacklisted simple_JWT access tokens/set necessary environmental checks.
- Understanding the usage of Knox and simple_jwt for user authentication and customizing them as needed.
- Understanding the use of django channels with websockets, and implementing a functional real-time chat between authenticated parties.
- Adding functionality for message replies, online/offline/typing status updates.