A database-backed web application to manage online examinations, built using Python, Streamlit, and MySQL. The system allows students and examiners to interact with features like exam creation, question banks, exam participation, and result viewing.
- Secure login for examiners
- Add questions to the question bank
- Create new exams
- Add specific questions to individual exams
- View all exams
- Secure student login
- View all available exams
- Attempt exams
- View exam results
- Frontend: Streamlit
- Backend: Python
- Database: MySQL
git clone https://github.com/Mad705/OEMS.git
cd OEMSMake sure Python 3.8+ is installed.
pip install -r requirements.txtIf
requirements.txtis missing, install dependencies manually:
pip install streamlit mysql-connector-python- Import the
schema.sqlfile into your MySQL database (if available). - Update your MySQL username and password in the
db.pyfile:
# db.py
mydb = mysql.connector.connect(
host="localhost",
user="your_mysql_username", # <-- change this
password="your_mysql_password", # <-- change this
database="your_database_name"
)Make sure the required database and tables are created before starting the app.
Launch the application with the following command:
streamlit run app.pyThis will open the OEMS web interface in your default browser.
Add screenshots of:
- Examiner dashboard
- Question bank interface
- Exam participation view
- Results page
Contributions are welcome! If you'd like to improve or extend this project, feel free to fork the repo and submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
For queries, bugs, or suggestions, open an issue on the GitHub repository:
https://github.com/Mad705/OEMS/issues