Skip to content

HasnaMarikkar/Movie-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

🎬 Movie Manager System

Movie Manager System is a simple command-line based Python application designed to help users manage a movie collection efficiently. The system allows users to add, view, search, update, and delete movie records through an interactive menu-driven interface.


👉 Features

  • Add new movies
  • View all movies in the collection
  • Search movies by title
  • Update movie information
  • Delete movies from the collection
  • Prevent duplicate Movie IDs
  • Input validation for release year
  • Simple and beginner-friendly CLI interface

🛠️ Technologies Used

  • Python 3
  • Object-Oriented Programming (OOP)
  • Lists & Functions
  • Command-Line Interface (CLI)

🚀 Features Breakdown

🎥 Movie Management

Users can:

  • Add new movies
  • View all stored movies
  • Search movies by title
  • Update existing movie details
  • Delete movies using Movie ID

🧩 Movie Information

Each movie contains:

  • Movie ID
  • Title
  • Director
  • Release Year
  • Genre

🔍 Search Functionality

Users can search movies by entering the movie title.

The system:

  • Performs case-insensitive searching
  • Displays matching movie details instantly

✏️ Update System

Users can update:

  • Movie title
  • Director name
  • Genre
  • Release year

The program also allows users to leave fields blank to keep existing values.


✅ Validation System

The application validates:

  • Duplicate Movie IDs
  • Numeric release year input
  • Invalid menu selections

⚙️ Process

  1. User launches the program

  2. Main menu appears

  3. User selects an option:

    • Add Movie
    • View Movies
    • Search Movie
    • Update Movie
    • Delete Movie
    • Exit
  4. Program processes the request

  5. Updated movie collection is displayed dynamically


🧑‍💻 How I Built It

I built Movie Manager System using Python and object-oriented programming concepts. The goal was to create a simple CRUD-based application that demonstrates how data can be managed using classes, lists, and functions.

The development process involved:

  • Creating a Movie class
  • Designing a menu-driven interface
  • Implementing CRUD operations
  • Building input validation systems
  • Managing movie data using Python lists
  • Creating reusable functions for each feature

📚 What I Learned

Through this project, I learned:

  • Object-Oriented Programming fundamentals
  • Creating Python classes and objects
  • Managing collections using lists
  • Function-based program structure
  • Input validation techniques
  • CRUD operation implementation
  • Building command-line applications
  • Writing cleaner and reusable code

📈 Overall Growth

This project improved my understanding of Python fundamentals and strengthened my problem-solving skills. It also helped me understand how real-world management systems work internally using CRUD operations and structured programming techniques.


🔧 What Could Be Improved

Possible future improvements include:

  • File handling for permanent storage
  • Database integration using SQLite/MySQL
  • GUI version using Tkinter or PyQt
  • Search by genre or director
  • Movie sorting system
  • User authentication
  • Export movie data to CSV/JSON
  • Better error handling

▶️ How to Run It

python movie_manager.py

Make sure Python 3 is installed on your system.


📂 Project Structure

movie-manager/
│
├── movie_manager.py
└── README.md

💡 Key Highlights

  • Beginner-friendly Python project
  • Uses Object-Oriented Programming
  • Fully functional CRUD system
  • Simple command-line interface
  • Clean and readable code structure
  • Lightweight and easy to understand
  • Great project for Python practice

About

A simple Python command-line Movie Manager System that allows users to add, view, search, update, and delete movie records using object-oriented programming and CRUD operations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages