About Me
I’m an undergraduate student double majoring in Computer Science and Mathematics at The Hong Kong University of Science and Technology (HKUST), currently on an exchange program at Georgia Tech to broaden my academic horizons. Driven by a passion for the interdisciplinary depths of computing, I’m particularly fascinated by the intersection of mathematical theory and practical software development. I’m eager to participate in research projects and contribute to advancing this visually compelling field, while continuing to build innovative solutions through hands-on projects like the one showcased here.
GT Movies Store: Comprehensive Project Description
GT Movies Store is a full-featured e-commerce web application built with Django that allows users to browse, search, and purchase movies online. The application was designed and developed to meet specific user stories, ensuring functionality aligns with user needs.
Technical Stack: Django, Python, SQLite, Bootstrap 5, HTML/CSS/JavaScript
🌐 Live Demo
📺 View Project Demonstration Video
Core Features and User Story Implementation
User Authentication & Management (Stories #2, #3)
- Implemented secure registration system with email validation
- Custom login/logout functionality with session management
Movie Browsing & Discovery (Stories #4, #5, #13)
- Responsive movie catalog with grid-based display using Bootstrap cards
- Advanced search functionality with real-time filtering
- Detailed movie pages with high-quality images and descriptions
- Price display and quick add-to-cart options
Shopping Cart System (Stories #6, #7, #9)
- Session-based cart persistence across browsing sessions
- Quantity adjustment and item management
- One-click cart clearing with confirmation
- Real-time total calculation with itemized pricing
Review & Rating System (Stories #8, #10, #11, #12)
- User-generated reviews with 1-5 star ratings
- Edit/delete functionality for user’s own content
- Review display with user information and timestamps
- Prevention of duplicate reviews for the same movie
Order Processing (Story #14)
- Secure checkout process with order confirmation
- Order history page with detailed purchase information
- Order tracking with unique order numbers
- Price snapshotting to preserve historical data
Administrative Features (Stories #17-20)
- Django admin interface for complete content management
- User management and order tracking capabilities
- Movie inventory control and pricing updates
- Review moderation tools
Development Process & Methodology
Development Approach
I followed a structured four-phase development methodology:
Phase 1: Foundation & Setup
- Created isolated Python environment using venv
- Established Django project structure with proper configuration
- Implemented version control with comprehensive .gitignore
- Set up development database and initial dependencies
Phase 2: Data Modeling & Administration
- Designed relational database schema with proper relationships
- Implemented Django models for Movies, Reviews, Orders, and OrderItems
- Created admin interface with customized display options
- Established media handling for movie images
Phase 3: Core Functionality Implementation
- Developed authentication system with custom registration form
- Built movie browsing and search functionality
- Implemented session-based shopping cart
- Created review system with user permissions
Phase 4: Polish & Testing
- Applied Bootstrap styling for responsive design
- Conducted comprehensive user story validation
- Performed cross-browser compatibility testing
Problem-Solving Approach
Throughout development, I employed several strategies to overcome challenges:
- Technical Research: Leveraged Django documentation and Stack Overflow for specific implementation questions
- Systematic Debugging: Used Django’s built-in development server and debug toolbar for issue identification
- User-Centric Validation: Continuously tested features against the original user stories to ensure requirements were met
- Progressive Enhancement: Built core functionality first, then added advanced features and styling
The most significant challenges included implementing persistent session-based shopping carts, managing database relationships between orders and order items, and creating a responsive design that worked across all device sizes.
Video Demonstration
Can’t see the video? Watch on YouTube
The video demonstrates all implemented user stories and shows the application in action.
Technical Achievements
- 100% User Story Completion: All 20 required user stories successfully implemented
- Responsive Design: Fully functional across desktop, tablet, and mobile devices
- Security Best Practices: Implemented CSRF protection, input validation, and proper authentication
- Code Maintainability: Clean, well-documented code following Django best practices
Source Code
The complete source code for GT Movies Store is available on GitHub:
This project was completed in Fall 2025 as part of CS2340 at Georgia Tech.