A Command-Line Interface (CLI) based Student Record Management System built with Python.
This application allows users to manage student records efficiently from the terminal without using any external libraries or GUI frameworks. It demonstrates fundamental Python programming concepts including file handling, modular programming, functions, loops, conditionals, and error handling.
- Overview
- Features
- Project Structure
- Technologies Used
- Requirements
- Installation
- Running the Project
- Application Menu
- Sample Workflow
- Data Storage
- Validation & Error Handling
- Future Improvements
- Author
- License
This project was developed as a Python programming assignment to practice real-world software development using only the Python Standard Library.
The application allows users to:
- Store student information
- Search students
- Remove students
- Save records permanently
- Load previous records automatically
Everything runs directly inside the terminal.
Store:
- Student Name
- Roll Number
- Email Address
- Department
Display all stored students in a clean format.
Search by:
- Name
- Roll Number
Supports partial searching.
Delete student records using Roll Number.
Confirmation is required before deleting.
The application prevents duplicate roll numbers.
Every new record is automatically saved.
When the application starts, previous records are loaded automatically.
Checks for:
- Empty input
- Invalid roll number
- Invalid student name
- Duplicate roll number
- Invalid email
Meaningful error messages guide the user instead of crashing the program.
student-record-management-system/
│── python.py
│── function.py
│── README.md
│── requirements.txt
Your actual filenames may differ.
- Python 3
- File Handling
- JSON / CSV / TXT
- Functions
- Loops
- Conditionals
- Exception Handling
- Modular Programming
No external libraries were used.
- Python 3.8 or later
Check Python version:
python --versionor
python3 --versionClone the repository:
git clone https://github.com/iamdeveloperrayhan/student-record-management-system.gitGo to the project folder:
cd student-record-management-systemRun:
python python.pyor
python3 python.py=========== MENU ===========
1. Add Student
2. View Students
3. Search Student
4. Remove Student
5. Exit
============================
Enter Student Name:
Enter Roll Number:
Enter Email:
Enter Department:
===== All Students =====
Name :
Roll :
Email :
Department :
Search using:
- Name
- Roll Number
Enter Roll Number
Confirm (Y/N)
Student records are stored locally inside:
students.json
(or CSV/TXT depending on your implementation)
Records are automatically:
- Loaded on startup
- Saved after every change
The system validates:
- Duplicate Roll Numbers
- Empty Inputs
- Invalid Roll Numbers
- Invalid Student Names
- Invalid Email Format
Friendly error messages are displayed to help users correct mistakes.
- Update Student Information
- Sort Students
- Login System
- Password Protection
- GPA Management
- Export PDF
- Colored CLI
- Database Support (SQLite)
Developer Rayhan
GitHub: https://github.com/iamdeveloperrayhan
If you found this project helpful, please consider giving it a ⭐ on GitHub.
It helps others discover the project and motivates further improvements.
This project is created for educational and learning purposes.