Logo Lanfrica

DawitSamuel-Dev/student-management-system

Domain:

education

Record type:

software
Creator:
Daw
Host:
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 …