An interactive web-based game to learn sentence parsing and grammatical analysis. Challenge yourself to identify verbs, nouns, subjects, predicates, and adjectives in sentences across three languages: English, German, and Dutch.
Play Parser Game on GitHub Pages
- Multi-language Support: Play in English, German, or Dutch
- 300+ Sentences: Each language has over 300 unique sentences (8-50 words each)
- 6 Challenge Types:
- Select all verbs in a sentence
- Select all nouns in a sentence
- Select the subject of a sentence
- Select the predicate of a sentence
- Select all adjectives in a sentence
- Select all prepositions in a sentence
- Mixed Mode: Challenge yourself by rotating through all grammatical elements—every question asks for a different type
- Interactive UI: Click on words to select them
- Real-time Feedback: Immediate visual feedback on correct/incorrect selections
- Score Tracking: Points awarded for correct identifications
- Responsive Design: Works on desktop, tablet, and mobile devices
Visit https://commjoen.github.io/parsergame/ to play immediately.
-
Clone this repository:
git clone https://github.com/commjoen/parsergame.git cd parsergame -
Open
index.htmlin your web browser# On macOS open index.html # On Linux xdg-open index.html # On Windows start index.html
-
Or serve with a local web server:
# Using Python 3 python -m http.server 8000 # Using Node.js npx serve .
Run the test suite by opening test.html in your browser. The tests verify:
- Sentence database integrity
- Translation completeness
- Game logic functionality
- Word count validation (8-50 words per sentence)
parsergame/
├── index.html # Main game interface
├── styles.css # Game styling and responsive design
├── game.js # Core game logic and interactions
├── sentences.js # Sentence database (250+ per language)
├── translations.js # Multi-language UI translations
├── test.html # Test suite for validation
├── README.md # Project documentation
├── LICENSE # GPL-3.0 license
└── .gitignore # Git ignore rules
- Select Language: Choose from English, German, or Dutch
- Choose Challenge: Pick what grammatical element to identify
- Read the Sentence: A sentence will be displayed with clickable words
- Make Selections: Click on words you think match the challenge
- Check Answer: Click "Check Answer" to see results
- Learn from Feedback: Green = correct, Red = incorrect, Orange = missed
- Continue: Move to the next question and improve your score
- Perfect Answer: 10 points
- Partial Answer: 1-9 points based on accuracy
- Wrong Answer: 0 points
- English: Full interface translation
- German (Deutsch): Complete German interface
- Dutch (Nederlands): Complete Dutch interface
Each language contains 300+ unique sentences covering various topics and grammatical structures.
- Pure HTML/CSS/JavaScript: No frameworks or build tools required
- Responsive Design: CSS Grid and Flexbox for all screen sizes
- Accessibility: Semantic HTML and keyboard navigation support
- Cross-browser Compatible: Works in all modern web browsers
- Semantic Versioning: Automatic version management and releases
Contributions are welcome! Here are ways to help:
- Add More Sentences: Expand the sentence database
- Improve Translations: Enhance language support
- Fix Bugs: Report and fix issues
- Add Features: Suggest and implement new game modes
- Fork the repository
- Make your changes
- Test with
test.html - Submit a pull request
Note: The site is automatically deployed to GitHub Pages when changes are merged to the main branch via GitHub Actions.
This project is licensed under the GPL-3.0 License - see the LICENSE file for details.
- Sentence examples inspired by common grammatical patterns
- Multi-language support for educational accessibility
- Open source educational tools community
Educational Purpose: This game is designed as a learning tool for grammar and sentence structure. It's suitable for students, teachers, and anyone interested in improving their grammatical analysis skills.