A console-based Student Management System built with Python that demonstrates Object-Oriented Programming (OOP), CRUD operations, JSON file handling, and modular programming.
This project was built as part of my Python learning journey and serves as a portfolio project before moving into Data Science and Machine Learning.
Below is a preview of the Student Management System:
- ➕ Add Student
- 👀 View Students
- 🔍 Search Student
- ✏️ Update Student
- ❌ Delete Student
- 💾 Save Student Data to JSON
- 📂 Load Student Data from JSON
- 🎓 Automatic Grade Calculation
- 📦 Modular Project Structure
- 🛡️ Exception Handling
- Python 3
- Object-Oriented Programming (OOP)
- JSON
- File Handling
- Git
- GitHub
- Visual Studio Code
Student-Management-System-Pro/
│
├── data/
├── logs/
├── venv/
│
├── main.py
├── student.py
├── manager.py
├── utils.py
├── decorators.py
│
├── students.json
├── requirements.txt
├── .gitignore
├── README.md
└── screenshot.png
This project demonstrates the following Python concepts:
- Classes & Objects
- Constructors (
__init__) - Methods
- Encapsulation
- Lists
- Loops
- Conditional Statements
- Functions
- Type Hints
- JSON Serialization
- File Handling
- Modular Programming
- CRUD Operations
- Error Handling
The application provides an interactive menu where users can:
- Add Student
- View Students
- Search Student
- Update Student
- Delete Student
- Save Data
- Load Data
- Exit
Student records are stored in a JSON file, allowing data to persist between program executions.
git clone https://github.com/muhammadusmanshakir/Student-Management-System-Pro.gitcd Student-Management-System-Propython -m venv venvvenv\Scripts\activatesource venv/bin/activatepip install -r requirements.txtpython main.py========================================
Student Management System
========================================
1. Add Student
2. View Students
3. Search Student
4. Update Student
5. Delete Student
6. Save Data
7. Load Data
8. Exit
========================================
- Login Authentication
- SQLite Database Integration
- GUI Version using Tkinter
- Web Version using Flask
- Search by Name
- Student Attendance
- GPA Calculator
- Export Data to CSV
- Logging System
- Unit Testing
While building this project, I practiced:
- Designing classes
- Managing objects
- Writing modular code
- Working with JSON files
- Implementing CRUD operations
- Using Git & GitHub effectively
- Organizing a real-world Python project
Muhammad Usman Shakir
- 🎓 BS Software Engineering — PUCIT
- 🤖 Aspiring AI & Machine Learning Engineer
- 📚 Currently learning Python, Data Science, and Machine Learning
GitHub: https://github.com/muhammadusmanshakir
If you found this project helpful, consider giving it a ⭐ Star on GitHub.
It motivates me to keep building and sharing more projects.
"Small progress every day leads to big achievements." 🚀
