A comprehensive Django project demonstrating a full user authentication flow, built with Django's internal auth system and stylized with a modern, premium UI.
- User Registration: Custom signup form extending
UserCreationForm. - Secure Login/Logout: Robust authentication handling with POST-based logout.
- Password Management: Full support for password resets (via console email) and password changes.
- User Profiles: View and edit user details (Username, Email, First Name, Last Name).
- Modern UI: Clean, responsive design using the "Outfit" font and a dark-mode palette.
- Automated Testing: 8 unit and integration tests covering all major auth flows.
- Django Version: 5.2.8
- Database: SQLite3
- Frontend: Tailwind-inspired vanilla CSS in
base.html. - Testing: Built-in Django
TestCase.
-
Clone the repository:
git clone <repository-url> cd django-authentication-system
-
Install dependencies:
pip install django
-
Run Migrations:
python manage.py migrate
-
Start the Development Server:
python manage.py runserver
-
Access the App: Open http://127.0.0.1:8000/ in your browser.
To execute the automated test suite:
python manage.py test