Build Django JWT Auth API

Замовник: AI | Опубліковано: 21.01.2026

I need a clean, well-structured Django REST Framework project that handles the entire user life-cycle with email-only credentials. A custom User model will replace the default username logic; every authentication step should key off the email field and reject duplicate addresses automatically. Core flow • Register → Email verification → Login (JWT, 1-hour expiry) → Logout • Forgot / reset password emails sent through SMTP (I’ll supply host credentials) Access rules • Superusers keep full CRUD over every profile. • Regular users may only update or delete their own profile, including avatar or other profile uploaded images. Data layer • UserProfile holds just name and email for now, but organise the code so I can extend it later without breaking migrations. • All incoming data must be validated in DRF Serializers; no forms or ModelForms. Deliverables 1. Django 4.x project with a Custom User model and Profile model. 2. JWT setup (djangorestframework-simplejwt or similar) with 60-minute access tokens and refresh tokens. 3. Endpoints: register, verify email, login, logout, refresh token, forgot password, reset password, profile read/update/delete, admin CRUD. 4. Minimal HTML templates that let me exercise each endpoint quickly from a browser. 5. Clear README covering environment setup, SMTP configuration, and endpoint examples (curl/Postman). 6. Well-named views, URLs, and serializers so the code doubles as a learning resource. If you can include basic unit tests for the auth flow that would be a plus, but focus first on robust, readable code that follows Django best practices.