Logo Lanfrica

DawitSamuel-Dev/student-management-system

Domaine:

education

Type de record:

software
Créateur:
Daw
Hôte:
A Python-based Student Management System with secure login, CRUD operations, reporting, file-based data storage, and activity logging. Built as a Capstone Project for the RITA Africa Python Fundamentals Bootcamp. # 🎓 Student Management System A simple Python-based Student Management System developed as a **capstone project** for the **RITA Africa Python Fundamentals Course**. This application allows **secure login**, **student record management (CRUD)**, **report generation**, and **file-based data persistence**. --- ## 🚀 Key Features - 🔐 **Authentication System** – Secure login with user accounts stored in `users.txt` - 🧑‍🎓 **Student Data Management** – Add, view, search, update, and delete student records - 📊 **Report Generation** – Generate basic reports on total students and grade distribution - 📝 **Activity Logging** – Tracks user logins, logouts, and actions in `activity_log.txt` - 💾 **File-Based Storage** – Data is stored in text files (`students.txt`, `users.txt`) for persistence - 🖥️ **Menu-Driven Interface** – Simple and user-friendly navigation --- ## 🛠️ Technologies Used - 🐍 Python 3.x - 📂 File Handling (TXT) - ⏱️ `datetime` module (for logging timestamps) - 🔒 `getpass` module (for hidden password entry) --- ## 📂 Project Structure ``` student_management_system/ │── main.py # Main program (menu-driven interface) │── student_management_system.ipynb # Jupyter Notebook version │── users.txt # Stores usernames and passwords │── students.txt # Stores student records │── activity_log.txt # Logs user activity │── README.md # Project documentation ``` ## 🏁 How to Run ```bash # Clone this repository 1. Clone this repository: git clone github.com cd student-management-system 2. Run the program: python main.py 3. If running for the first time, create an Admin account when prompted. ``` 🖱️ Usage --- Login with a valid username and password. Use the menu to: - ➕ Add a new student - 📄 View all students - 🔍 Search for a student by roll number - ✏️ Update student details - ❌ Delete student records - 📊 Generate a student report - Logout when done (session activity will be logged) ``` ``` 📊 Sample Report …