A command-line tool for managing quiz content for static quiz websites. Handles HTML templates, quiz JSON files, and metadata tracking.
- Interactive CLI with intuitive prompts
- Web-based GUI for browser management
- AI-Powered PDF Extraction - Convert PDF quizzes to JSON using Gemini AI
- Automatic math formula conversion to KaTeX
- Comprehensive logging and error handling
- Shell autocomplete support (bash, zsh, PowerShell)
- Docker deployment support
- TypeScript with strict type safety
npm install -g @3bbas/mkquiz# Configure your project
mkquiz config
# Add a new quiz
mkquiz add
# Remove quizzes
mkquiz remove| Command | Description |
|---|---|
config |
Configure project paths |
add |
Add a new quiz |
remove |
Remove existing quizzes |
completion |
Generate shell completion script |
Start the web server to manage quizzes through your browser:
npm run serverAccess the GUI at http://localhost:3000
Upload a PDF file containing quiz questions and let Gemini AI automatically extract and convert them:
- Set your Gemini API key (get it free from Google AI Studio)
- Upload your PDF file
- AI extracts questions and converts math formulas to KaTeX
- Quiz is automatically created and added to your project
Set API key via environment variable:
export GEMINI_API_KEY=your_key_here
npm run serverDeploy using Docker:
docker-compose up -dOr build and run manually:
docker build -t mkquiz .
docker run -p 3000:3000 -v /path/to/project:/quiz-project:ro mkquizISC
3bbas - GitHub
Contributions are welcome! Please open an issue or submit a pull request.
For issues or questions, please open an issue on GitHub.
For detailed documentation, see docs.md.