TheQuizLab is an interactive Streamlit web app that intelligently generates quiz questions from any educational document. Whether you're a teacher, trainer, or student, this tool helps you quickly turn notes or handouts into personalized quizzes to boost learning and engagement.
TheQuizLab is an interactive Streamlit web app that generates intelligent quiz questions from your documents using natural language processing. Ideal for educators, students, and trainers, it can turn lecture notes, reports, and articles into quizzes with just a few clicks.
.docx, .pdf, .txt, .csv, and .ipynb filessentence-transformers.docx filepdfminer.six β PDF text extractionpypandoc β File format conversionpython-docx β Word document handlingdotenv β For managing API keys (if applicable)TheQuizLab/
β
βββ main.py # Main Streamlit app
βββ quiz_engine.py # Handles question generation logic
βββ doc_processor.py # Handles file reading & conversion
βββ requirements.txt
βββ README.md
git clone https://github.com/your-username/TheQuizLab.git
cd TheQuizLab
pip install -r requirements.txt
3. Run the app
streamlit run main.py
π Note: For PDF, CSV, and notebook file uploads, Pandoc must be installed on your system.
The user uploads a document.
The app extracts clean text and uses a pre-trained SentenceTransformer model to understand and generate quiz-style questions.
You choose difficulty level and type (MCQ or Fill-in-the-blank).
The app returns a list of questions with answers, and you can download it as a Word document.
π§ΎLicense
MIT License. Feel free to modify and use for educational or personal projects.
π Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
π¨βπ» Author
Faithfulness Issijude and Toochi Uduma