This project demonstrates how to implement a Flask-based web application using MySQL for user authentication, profile management, and secure document sharing. It also features role-based access so that faculty members can update grades, while students can only view them.
- User Registration & Login: Securely store credentials in a MySQL database.
- Profile Management: Update personal details and reset passwords.
- Document Sharing: Upload and manage documents if you have the necessary privileges.
- Role-Based Grade Management:
- Faculty: Add or update student grades.
- Students: View grades without edit privileges.
- Make sure you have Python 3.8+ and MySQL installed.
- Clone this repository or download it to your local machine.
- Install dependencies:
pip install -r requirements.txt
- Create a MySQL database and run the provided schema.sql script to set up tables.
5.In your Flask app file (e.g., app.py), update the MySQL configuration (host, user, password, db).
- Start the Flask server:
python app.py
- Open your browser at http://127.0.0.1:5000/.
students side
teachers side
students side

New Users: Click “Signup” to create an account.
Returning Users: Log in with your credentials.
Faculty: Add or update grades from the “Add Grades” section (only visible to faculty).
Students: View your grades in read-only mode.
Documents: Upload or share files if enabled.
This project is licensed under the MIT License - see the LICENSE file for details.