NC Cinema
Genre: Full-Stack Web Application
Role: Solo Developer
Framework: Django
Language: Python, HTML, CSS
Database: SQLite
View Repository ->Project Breakdown | Full-Stack Django Web Application
Django | Python | Full-Stack Development
NC Cinema is a full-stack cinema booking web application built with Django. Users can browse movies, view screening times, create an account, and book cinema tickets through a responsive interface, while administrators manage movies, screenings, and bookings through Django's admin panel.
Genre: Full-Stack Web Application
Role: Solo Developer
Framework: Django
Language: Python, HTML, CSS
Database: SQLite
View Repository ->Software Summary:NC Cinema is a full-stack web application developed using Django that allows users to browse currently showing movies, view detailed information, register an account, and book cinema screenings online. The application includes authentication, role-based administration, and relational database management to create a complete cinema booking experience.
Core Goal: The goal of the project was to develop a complete full-stack web application that demonstrates authentication, database relationships, CRUD operations, responsive UI design, and role-based access control while providing users with an intuitive online cinema booking experience.
Development Context: This project was developed as part of my Full Stack Software Development diploma. It focused on applying backend web development concepts including Django models, authentication, relational databases, deployment, and object-oriented programming.
What I Learned: During development I significantly improved my understanding of
Biggest Challenge: One of the biggest challenges was designing the relationships between movies, screenings, bookings, and users while ensuring bookings remained secure and accessible only to authenticated users. This required careful planning of Django models, foreign key relationships, authentication decorators, and booking validation.
Users can browse available movies, view detailed information,
and book screenings after logging into their account.
The application includes a complete authentication system allowing users to securely register,
log in, and manage bookings.
Administrators can manage the entire cinema through Django's built-in admin panel.
Explore the complete NC Cinema source code on GitHub, including all Django models,
authentication logic, booking system implementation, and deployment configuration.
View the deployed NC Cinema application on Heroku to experience the full booking workflow,
user authentication, movie browsing, and cinema seat selection interface.
NC Cinema was developed using Python and Django, following the Model-View-Template (MVT) architecture to separate application logic, data, and presentation.
The project utilises Django's ORM to manage relational database models for movies, screenings, and bookings, with foreign key relationships ensuring data integrity throughout the application.
Authentication and authorization are implemented using Django's built-in user system and protected routes, while media assets are hosted through Cloudinary.
The front end was built with HTML and CSS, version control was managed using Git and GitHub, and the application was deployed to Heroku.
Developing this project strengthened my understanding of full-stack architecture, relational databases, CRUD operations, authentication, deployment, and maintainable software design.