Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

🎓 Student Record Management System

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.


📑 Table of Contents

  • Overview
  • Features
  • Project Structure
  • Technologies Used
  • Requirements
  • Installation
  • Running the Project
  • Application Menu
  • Sample Workflow
  • Data Storage
  • Validation & Error Handling
  • Future Improvements
  • Author
  • License

📖 Overview

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.


✨ Features

✅ Add Student

Store:

  • Student Name
  • Roll Number
  • Email Address
  • Department

✅ View Students

Display all stored students in a clean format.


✅ Search Students

Search by:

  • Name
  • Email
  • Roll Number

Supports partial searching.


✅ Delete Student

Delete student records using Roll Number.

Confirmation is required before deleting.


✅ Duplicate Roll Protection

The application prevents duplicate roll numbers.


✅ Automatic File Saving

Every new record is automatically saved.


✅ Automatic File Loading

When the application starts, previous records are loaded automatically.


✅ Input Validation

Checks for:

  • Empty input
  • Invalid roll number
  • Invalid student name
  • Duplicate roll number
  • Invalid email

✅ Error Handling

Meaningful error messages guide the user instead of crashing the program.


📁 Project Structure

student-record-management-system/

│── python.py
│── function.py
│── README.md
│── requirements.txt

Your actual filenames may differ.


🛠 Technologies Used

  • Python 3
  • File Handling
  • JSON / CSV / TXT
  • Functions
  • Loops
  • Conditionals
  • Exception Handling
  • Modular Programming

No external libraries were used.


💻 Requirements

  • Python 3.8 or later

Check Python version:

python --version

or

python3 --version

⚙️ Installation

Clone the repository:

git clone https://github.com/iamdeveloperrayhan/student-record-management-system.git

Go to the project folder:

cd student-record-management-system

▶️ Running the Project

Run:

python python.py

or

python3 python.py

🖥 Application Menu

=========== MENU ===========

1. Add Student

2. View Students

3. Search Student

4. Remove Student

5. Exit

============================

📸 Sample Workflow

Add Student

Enter Student Name:
Enter Roll Number:
Enter Email:
Enter Department:

View Students

===== All Students =====

Name :
Roll :
Email :
Department :

Search Student

Search using:

  • Name
  • Email
  • Roll Number

Delete Student

Enter Roll Number

Confirm (Y/N)

💾 Data Storage

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

⚠️ Validation & Error Handling

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.


🚀 Future Improvements

  • Update Student Information
  • Sort Students
  • Login System
  • Password Protection
  • GPA Management
  • Export PDF
  • Colored CLI
  • Database Support (SQLite)

👨‍💻 Author

Developer Rayhan

GitHub: https://github.com/iamdeveloperrayhan


⭐ Support

If you found this project helpful, please consider giving it a ⭐ on GitHub.

It helps others discover the project and motivates further improvements.


📜 License

This project is created for educational and learning purposes.

About

A command-line Student Record Management System built with Python. Manage student records with add, view, search, delete, file persistence, input validation, and modular architecture using only Python standard libraries.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages