Skip to main content

A quiz authoring format and tool with different export formats.

Project description

🌟 Queck: An YAML based Format for Quiz Authoring

Queck is a simple and structured format for authoring quizzes based on YAML and Markdown. It provides a flexible schema for different types of questions, supporting both basic and complex quiz designs. Queck can export quizzes into HTML or Markdown, with options for live watching and automatic re-exporting upon file changes.


🆚 Alternatives

  • GIFT – A widely used Moodle format for quiz authoring, but with more complex syntax compared to Queck’s simple YAML structure.

🔑 Key Features

  • 📝 YAML-based quiz authoring: Author quizzes in a clean, human-readable YAML format.
  • 🧠 Support for diverse question types: Including multiple-choice, true/false, numerical answers, comprehension passages, and more.
  • ✔️ Multiple answer formats: Single correct answers, multiple select, numerical ranges, and tolerance-based answers.
  • 🔍 Schema validation with Pydantic: Ensures your quiz structure is validated for correctness before exporting.
  • 📤 Flexible export options: Export quizzes in JSON, HTML (print-ready), or Markdown formats.
  • ⚙️ Command-line interface: Simple CLI for validation and export operations.
  • ♻️ Live reloading for development: Integrated live reload server to auto-update quizzes as you edit.
  • 📐 Mathematical equation support: Native support for LaTeX-style equations for math-based quizzes.
  • 💻 Code block rendering: Display code snippets within quiz questions for technical assessments.
  • 💯 Optional Scoring: Optional scoring support.

📝 Question Types

Queck supports a variety of question types, including:

  • Multiple Choice Questions (MCQ)
  • Multiple Select Questions (MSQ)
  • Numerical Answer Type (NAT)
  • True/False
  • Short Answer (SA)
  • Comprehension or Common Data Questions – With multiple sub-questions based on a shared passage.

✏️ Answer formats

  • Choices
    - ( ) Option 1
    - (x) Option 2 // feedback for option 2
    - ( ) Option 3
    - ( ) Option 4
    
  • Numerical
    • Integer match - 42
    • Range match - 1.15..1.17
    • Tolerance match - 1.16|0.01
  • Text (Short Answer) - apple
  • True/False - true or false

📄 Sample Queck Format

Refer the example queck files from examples.


🚀 Installation

To install Queck, run the following command:

pip install "git+https://github.com/livinNector/queck.git"

💻 Example Command

To export a quiz in HTML format with live watching enabled:

queck export path/to/quiz.yaml --format html --output_folder export --render_mode fast --watch
  • --format: Specify output format as html or md.
  • --output_folder: Directory for exported files.
  • --render_mode: Use fast for KaTeX and Highlight.js, or compat for MathJax and Pygments.

🤝 Contribution

We welcome contributions! Feel free to submit pull requests, report issues, or suggest new features. Let's make Queck better together! 🙌


⚖️ License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

queck-1.0.0.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

queck-1.0.0-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

Details for the file queck-1.0.0.tar.gz.

File metadata

  • Download URL: queck-1.0.0.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for queck-1.0.0.tar.gz
Algorithm Hash digest
SHA256 abda5e6928b1d62ffd58e31a8d8d29cb65c480876e97d34b83ff7054ec27c0cc
MD5 375aa42edbd04b53ae6340355a781e0b
BLAKE2b-256 f6e4c5c0792448aa1ce022eb18ba8c0ce18ecac2e771f48ed57db1bdebabb9c7

See more details on using hashes here.

File details

Details for the file queck-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: queck-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 25.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for queck-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bcc44ed98be7feb87d97ee30ee912be4e1717b90e26e95a5a55e5fa90ecfc8a9
MD5 fa2b12b8698c6307a09f0792eacb5bec
BLAKE2b-256 a2e6cf0125a4d8826b2dae9cb35c76b5c82f859d4efad0bf108320a2d65edcae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page