Problem Statement & Business Logic
The site is a hub for students studying for GCSE English Language and Literature, aiming to provide information and support via YouTube, resources and access to additional study material.
Students studying for GCSE English Language & Literature
The site contains a learning management system, where YouTube videos are uploaded. There is also a shop that provides the ability to add digital products. Stripe is used for taking payment. Finally, there is a blog/news site where articles and videos can be added to help promote the platform.
The site contains the ability to add images, video and PDF or use external links to include video, images and PDFs.
MySQL MariaDB (development and production)
Stripe payment solutions
Responsive design with dark mode support
Deployed on WebHostUK
passenger_wsgi.py and htaccess for deployment
Email: SMTP via cPanel
Media storage: Local filesystem
Course Management: The platform enables comprehensive course creation and organisation, incorporating both video lessons and supporting materials. There is only one teacher running the site and she can upload videos directly through Cloudinary or integrate YouTube content. The system includes robust course categorisation and tracks student progress throughout their learning journey. Free lessons are available without the need to register. Some courses are only available to those who register and enrollment is only available to those who have validated their email address.
Authentication & User Management: Users benefit from personalised profiles with secure email verification and password management systems. The enrollment system seamlessly connects students with their chosen courses while maintaining privacy and security standards.
Content Management: Content creation is streamlined through CKEditor 5's rich text editing capabilities, allowing for dynamic page management. The platform incorporates SEO optimisation tools and engaging visual elements through customisable hero sections and banners to enhance user experience.
Learning Features: Students can easily monitor their educational journey through detailed progress tracking and course completion statistics. The system remembers where each student left off, enabling them to resume learning seamlessly. A preview system lets potential students sample course content before enrollment.
Admin Interface: Administrators have access to a custom Django interface that provides comprehensive control over content, user management, and course oversight. This centralised management system ensures efficient operation of all platform features.
Development Features: The technical infrastructure includes secure environment variable management through python-decouple, efficient static file handling with whitenoise, and media management via Cloudinary. The platform incorporates robust CSRF protection and sophisticated error handling to ensure smooth operation and security.
Bugs & Fixes
The section that monitors video progress does not work in production. It works fine in development but has not transferred over well. There is currently an Ajax issue that prevents it from working.