https://github.com/linnhtetwin/deutsch-meister
Interactive platform to master German cases, articles, and verb usage with quizzes, dictionary, and grammar guides
https://github.com/linnhtetwin/deutsch-meister
akkusativ dativ edtech education genitiv german-cases german-grammar german-learning grammar language-learning
Last synced: about 2 months ago
JSON representation
Interactive platform to master German cases, articles, and verb usage with quizzes, dictionary, and grammar guides
- Host: GitHub
- URL: https://github.com/linnhtetwin/deutsch-meister
- Owner: linnhtetwin
- License: apache-2.0
- Created: 2026-01-19T03:06:30.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2026-05-16T13:04:44.000Z (2 months ago)
- Last Synced: 2026-05-16T15:13:15.760Z (2 months ago)
- Topics: akkusativ, dativ, edtech, education, genitiv, german-cases, german-grammar, german-learning, grammar, language-learning
- Language: TypeScript
- Homepage: https://deutsch-meister.pages.dev
- Size: 447 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# đŠđŞ Deutsch Meister
**Master the German Case System & Articles**
A comprehensive learning platform for German grammar, specializing in verbs, nouns, and the German case system (Dativ, Akkusativ, Genitiv).
[View Online](https://deutsch-meister.pages.dev/) ⢠[Features](#features) ⢠[Getting Started](#getting-started) ⢠[Technologies](#technologies) ⢠[License](#license)
[](https://www.apache.org/licenses/LICENSE-2.0)
---
## Features
⨠**Interactive Learning Modules**
- đ **WĂśrterbuch (Dictionary)** â Browse and search the growing verb/noun database with lazyâloading infinite scroll, relevanceâaware sorting and advanced filters (Dativ, Akkusativ, Genitiv, WechselpräpositionâŻââŻAkk/Dativ, PräpositionalverbâŻââŻAkk/Dativ, Intransitiv, Modalverb, plus nouns/adjectives/adverbs). Search looks through example sentences and full verb conjugations for smarter results.
- â **Verb Quiz** â Master German verbs with multiple quiz modes: Classic, Wechselpräpositionen, GenitivâMeister (rare Genitiv verbs), and Chaos Mix. Realâtime feedback plus a **streak counter** keeps you motivated.
- đ **Nomen Quiz** â Practice German article selection (Der, Die, Das) with instant feedback, streak tracking and a builtâin educational section full of gender heuristics and tips.
- đ **Anleitung (Guide)** â Comprehensive grammar reference featuring declension tables, sentenceâstructure rules (V2, TeKaMoLo, subclauses), adverb explanations and handy genderâending cheat sheets.
đ¨ **User Experience**
- Clean, intuitive interface with German cultural styling
- Real-time feedback on quiz answers
- Streak counter to track your progress
- Responsive design for mobile and desktop
âď¸ **Built with Modern Tech**
- React 19 + TypeScript
- Vite for blazing-fast development
- Tailwind CSS for styling
- Lucide React icons
- Google Gemini API integration
---
## Getting Started
### Prerequisites
- **Node.js** (v16 or higher)
- **npm** or **yarn**
### Installation
1. **Clone the repository**
```bash
git clone https://github.com/yourusername/deutsch-meister.git
cd deutsch-meister
```
2. **Install dependencies**
```bash
npm install
```
3. **Configure environment variables**
Create a `.env.local` file in the root directory (these files are ignored by Git for security):
```env
VITE_GEMINI_API_KEY=your_gemini_api_key_here
```
You can also use other `.env` variants like `.env.development.local` or `.env.production.local` â the gitignore prevents them from being accidentally committed.
> â ď¸ **Security tip:** never commit API keys or other secrets. The app reads from `import.meta.env` at build time, so local files or environment variables on the hosting platform are sufficient.
4. **Start development server**
```bash
npm run dev
```
The app will be available at `http://localhost:3000`
### Build for Production
```bash
npm run build
```
Preview the production build:
```bash
npm run preview
```
### Deploy to Cloudflare Pages
```bash
npm run deploy
```
---
## Project Structure
```
deutsch-meister/
âââ components/ # React components
â âââ DictionaryView.tsx # Dictionary/search interface
â âââ VerbQuiz.tsx # Verb quiz with multiple modes
â âââ NounQuiz.tsx # Noun/article quiz
â âââ GuideView.tsx # Grammar guide
â âââ WordCard.tsx # Reusable word card component
âââ App.tsx # Main app component
âââ data.ts # Verb and noun database
âââ types.ts # TypeScript type definitions
âââ index.tsx # React entry point
âââ vite.config.ts # Vite configuration
âââ public/ # Static assets
```
---
## Technologies
- **Frontend Framework**: [React 19](https://react.dev)
- **Language**: [TypeScript](https://www.typescriptlang.org)
- **Build Tool**: [Vite 6](https://vitejs.dev)
- **Styling**: [Tailwind CSS](https://tailwindcss.com)
- **Icons**: [Lucide React](https://lucide.dev)
- **AI**: [Google Gemini API](https://ai.google.dev)
- **Hosting**: [Cloudflare Pages](https://pages.cloudflare.com)
---
## Available Scripts
| Command | Description |
|---------|-------------|
| `npm run dev` | Start development server |
| `npm run build` | Build for production |
| `npm run preview` | Preview production build |
| `npm run deploy` | Build and deploy to Cloudflare Pages |
---
## Learning Resources
This app focuses on mastering:
- **German Cases** (Fälle):
- Nominativ (Nominative)
- Dativ (Dative)
- Akkusativ (Accusative)
- Genitiv (Genitive)
- **German Articles**:
- Definite articles: Der, Die, Das
- Case agreement and article changes
- **Verb Categories**:
- Standard dative/accusative verbs
- Wechselpräposition verbs (two-way prepositions)
- Genitive verbs
- Prepositional verbs
- Intransitive verbs
- **Additional Grammar Topics**:
- Declension tables for adjectives, pronouns and articles
- Sentence structure rules (V2, TeKaMoLo, subclauses)
- Adverbs and their order
- Gender-ending heuristics and cheatâsheets
---
## Contributing
Contributions are welcome! Feel free to:
- Report bugs and issues
- Suggest new features (e.g. more case filters, verb/noun entries, etc.)
- Improve the grammar database
- Submit pull requests
> đ **Security:** please avoid adding any private credentials or keys to commits. Use environment variables or secure storage when testing APIs.
---
## License
This project is licensed under the Apache License v2.0 (Apache-2.0). See the [LICENSE](LICENSE) file for details.
---
Made with â¤ď¸ for German learners worldwide