The goal of this project is to support learning of the Django framework, with a primary focus on backend development. Along the way, it incorporates a variety of external services to meet different functional requirements. While the app is fundamentally backend-driven, certain advanced features—such as multi-factor authentication (MFA), donation payments, and user account deletion—introduce significant frontend complexity. As such, a solid understanding of JavaScript is recommended before exploring these sections: JavaScript Intermediate Docs
I am still a learner myself. Throughout development, I encountered and had to adopt many unfamiliar methodologies, which may have introduced occasional mistakes or inconsistencies in the documentation. Nevertheless, the process has been incredibly educational, and I hope others will find value in the experience and insights shared.
To get started, simply download Django.pdf
Or open the via OneDrive: Django Tutorial 2025.pdf,
and follow the instructions inside.
NOTE:
- I recommend opening the file in two-page view on a separate monitor for easier navigation.
- This project was mainly developed and tested in a Linux-based environment: RedHat family - Fedora.
- This project is built using the latest stable release of Django and up-to-date pip packages as of July 2025. All dependencies have been actively maintained to ensure compatibility, security, and modern development practices.
-
This project makes extensive use of Bootstrap 5 components, which—while widely supported—may no longer be the preferred choice for building modern, scalable applications, especially given the recent shift in popularity toward Tailwind CSS.
Nonetheless, I discovered several useful packages that simplified development and complemented Bootstrap's design system. They also helped streamline the documentation by saving visual and layout space, making the learning process more approachable.
- Login User
- Register User
- Models
- Multi-Factor Authentication
- Remove User
- Chat Rooms
- Payments
- Errors
- Contacting Support
More features are found within the documentation.
|
Visiting clients can register new users and optionally set a profile image during registration. Once registered, users are authenticated automatically and redirected to the main page. From their profile page, they can update their photo, password, and other account details at any time. If no image is provided, a default template image is automatically assigned. To handle media storage efficiently, the application integrates with Amazon S3 buckets. This setup ensures profile pictures are stored securely and reliably, leveraging AWS's globally distributed, scalable infrastructure. Offloading image management to S3 also simplifies server logic and improves performance across deployments. This app can optionally protect the clients of all ages by filtering out the profiles with NSFW images using third-party service: DeepaAI Users can delete their account anytime from the profile page, giving them full control over their data and online presence. |
![]() |








