diff --git a/README2.md b/README2.md new file mode 100644 index 0000000..f44e1f2 --- /dev/null +++ b/README2.md @@ -0,0 +1,123 @@ +# Typewriter Tutor - Tipptrainer + +Ein webbasierter Tipptrainer, der Ihnen hilft, das Zehnfingersystem zu erlernen und Ihre Tippgeschwindigkeit zu verbessern. + +(Nur ein Übungsprojekt, um die Anwendung von [Aider](https://aider.chat/) auszuprobieren. Die Statistik ist noch buggy.) + +## Screenshot + +![Screenshot](images/screenshot.jpg) + +## Funktionen + +- **Lektionen-basiertes Training**: 20 strukturierte Lektionen von Grundlagen bis zu Programmiertexten +- **Echtzeit-Statistiken**: Anzeige von Tippgeschwindigkeit (WPM) und Genauigkeit +- **Fortschrittsverfolgung**: Persistente Speicherung Ihrer Lernfortschritte +- **Responsive Design**: Funktioniert auf Desktop und mobilen Geräten +- **Dark/Light Mode**: Anpassbare Oberfläche +- **Flexible Lektionen-Auswahl**: Direkter Zugriff auf beliebige Lektionen + +## Technologien + +- **Backend**: Python mit Flask Framework +- **Frontend**: HTML, CSS, JavaScript mit Bootstrap +- **Datenbank**: SQLite mit SQLAlchemy ORM +- **Datenpersistenz**: JSON-basierte Lektionen + +## Installation + +1. Repository klonen: +```bash +git clone https://github.com/jamulix/typewriter.git +cd typewriter +``` + +2. Python-Umgebung einrichten (empfohlen): +```bash +python -m venv venv +source venv/bin/activate # Linux/Mac +# oder +venv\Scripts\activate # Windows +``` + +3. Abhängigkeiten installieren: +```bash +pip install flask flask-sqlalchemy +``` + +4. Anwendung starten: +```bash +python app.py +``` + +5. Im Browser öffnen: http://localhost:5000 + +## Projektstruktur + +``` +typewriter/ +├── app.py # Haupt-Flask-Anwendung +├── models.py # Datenbankmodelle +├── data/ +│ └── lessons.json # Lektionen-Daten +├── static/ +│ ├── css/ +│ │ └── style.css # Styling +│ └── js/ +│ └── script.js # Client-seitige Logik +├── templates/ +│ └── index.html # Haupttemplate +└── instance/ + └── database.db # SQLite-Datenbank (wird automatisch erstellt) +``` + +## Lektionen-Übersicht + +Das Training umfasst 20 Lektionen: + +1. **Grundreihe** (asdf jklö) +2. **Kombinationen der Grundreihe** +3. **Leichte Wörter** +4. **Neue Buchstaben** (q w e r t z) +5. **Kurze Wörter** +6. **Einfache Sätze** +7. **Umlaute und ß** +8. **Komplexe Wörter** +9. **Kurze Textpassagen** +10. **Fließtextrealismus** +11. **Sonderzeichen und Zahlen** +12. **Dialoge** +13. **Redewendungen** +14. **Thematische Texte** +15. **Abschlusstext** +16. **Programmierzeichen** +17. **Python Basics** +18. **C-Style Syntax** +19. **HTML / JavaScript** +20. **JSON Parsing** + +## Verwendung + +1. Starten Sie die Anwendung und öffnen Sie sie im Browser +2. Wählen Sie eine Lektion aus der Seitenleiste +3. Tippen Sie den angezeigten Text in das Eingabefeld +4. Ihre Statistiken (WPM und Genauigkeit) werden in Echtzeit aktualisiert +5. Wechseln Sie zur nächsten Lektion oder beenden Sie die Sitzung + +## Entwickler-Funktionen + +- `/debug` - Debug-Informationen +- `/repair_json` - JSON-Reparatur-Endpoint +- `/recreate_lessons` - Lektionen neu erstellen +- `/update_progress` - Fortschritt aktualisieren +- `/next_text` - Nächsten Text anfordern +- `/set_lesson` - Lektion setzen +- `/end_session` - Sitzung beenden + +## Screenshot + +![Typewriter Tutor Screenshot](https://raw.githubusercontent.com/jamulix/typewriter/main/data/typewriter_screeshot.jpg) + +## Lizenz + +MIT License