/croquet-quiz-game

Newer version of LLM derived questions croquet quiz.

Primary LanguageJavaScriptMIT LicenseMIT

Croquet Quiz Game

A web-based quiz application for testing and improving croquet knowledge, featuring questions drawn from authoritative sources in the croquet world.

Features

  • Interactive quiz interface with multiple-choice questions
  • Score tracking and achievement levels
  • Daily and all-time high score boards
  • Question feedback with source citations
  • "Dubious Question" feature for flagging questionable content
  • Responsive design for desktop and mobile use

Technology Stack

  • Frontend: Vanilla JavaScript, HTML5, CSS3
  • Backend: Node.js, Express
  • Data Storage: JSON files, Local Storage for scores

Setup

  1. Clone the repository:
git clone https://github.com/michaelkernaghan/croquet-quiz-game.git
cd croquet-quiz-game
  1. Install dependencies:
npm install
  1. Start the server:
node src/server.js
  1. Open your browser and navigate to http://localhost:3000

Development

Project Structure

croquet-quiz-game/
├── src/
│   ├── frontend/          # Frontend assets
│   │   ├── app.js        # Main application logic
│   │   ├── styles.css    # Styling
│   │   └── index.html    # Main HTML
│   └── server.js         # Express server
├── rag/                  # Source materials
├── docs/                 # Documentation
├── scripts/             # Utility scripts
└── public/              # Static assets

Question Format

Questions are stored in JSON format with the following structure:

{
  "question": "Question text",
  "answers": [
    {
      "answer": "Option A",
      "correct": false
    },
    {
      "answer": "Option B",
      "correct": true
    }
  ],
  "citation": "Source reference",
  "category": "Category name",
  "correctTheory": {
    "title": "Theory title",
    "summary": "Explanation of the correct answer"
  }
}

Adding New Questions

  1. Questions can be added to src/frontend/croquet-questions.json
  2. Each question must include:
    • Question text
    • Multiple choice answers (with one correct)
    • Source citation
    • Category
    • Correct theory explanation

Data Sources

Questions are derived from authoritative croquet sources:

  • MacRobertson Shield 2022 Commentary
  • Oxford Croquet Articles
  • Expert Croquet Tactics by Keith Wylie
  • World Croquet Federation Guidelines

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Questions generated by Claude 3.5 Sonnet and curated by A. Human
  • Special thanks to the croquet community for maintaining comprehensive documentation
  • Built with respect for the traditions and technical aspects of croquet