Skip to content

About

A complete offline touch-typing trainer for Windows - progressive course, adaptive practice, timed tests, keyboard games and honest statistics

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

🥋 Typing Dojo

Master touch typing with precision, adaptive drills, interactive games, and detailed analytics.

Latest Release .NET 8.0 WinUI 3 Windows 10 / 11 MIT License


⚡ Try It Now (Zero-Install Portable Download)

Get typing in seconds — no installer, no MSIX, and zero dependencies required:

👉 Download the Latest Portable Standalone ZIP (x64)

  1. Download TypingDojo-v*-win-x64.zip.
  2. Extract the archive to any folder.
  3. Launch TypingDojo.exe and begin training!

📸 Screenshots

Typing Dojo Dashboard


✨ Features Overview

  • 🎯 Guided 29-Lesson Course: Progress methodically from home row basics (F and J) through index, middle, ring, pinky reaches, capital letters, punctuation, numbers, and symbols.
  • 🧠 Adaptive Smart Practice: Real-time error analytics identify your weakest keys and slowest bigrams (key pairs), generating customized drills targeting specific friction points.
  • ⏱️ Timed Typing Tests: Formal 1, 2, 3, or 5-minute typing speed and accuracy evaluations with customizable minimum WPM / accuracy thresholds.
  • 📜 Printable Achievement Certificates: Export elegant, high-resolution HTML certificates with your name, test scores, WPM, and accuracy that can be saved or printed.
  • 🎮 Three Engaging Arcade Mini-Games:
    • Falling Words: Intercept and type incoming words before they hit the ground.
    • Letter Bubbles: Pop floating target letters as they appear on screen.
    • Word Stack: Clear rising columns by typing stacked words under pressure.
    • All mini-games dynamically adapt to only use characters you have already learned.
  • 📊 In-Depth Performance Analytics:
    • Key-by-key speed and accuracy breakdown.
    • Problematic key pairs and bigram latency matrix.
    • Historical practice trends, streak counters, and WPM progression over time.
  • ⌨️ Interactive Visual Keyboard: On-screen keyboard with color-coded finger assignments, animated keypress highlights, and real-time guidance.
  • 👤 Multi-User Profiles: Create and switch between local typist profiles without cloud dependencies or account sign-in.
  • 🎨 Modern Windows Fluent Design: Built with WinUI 3, Mica background material, smooth typography, and seamless light/dark theme support.
  • 🔒 100% Offline & Private: Zero telemetry, no analytics tracking, no external API calls. All training data resides exclusively on your local machine in %LocalAppData%\TypingDojo.

🏗️ Architecture & Technology Stack

Layer Technology
UI Framework WinUI 3 (Windows App SDK)
Language & Runtime C# 12 / .NET 8 (net8.0-windows10.0.19041.0)
Packaging Model Pure Unpackaged (WindowsPackageType=None, WindowsAppSDKSelfContained=true)
Audio Synthesis Real-time procedural PCM WAV generation via Windows.Media.Playback.MediaPlayer
Data Persistence Plain JSON file storage in %LocalAppData%\TypingDojo via Newtonsoft.Json
Target OS Windows 10 (version 1809+, build 17763) and Windows 11 (all versions)

🛠️ Building & Running from Source

Prerequisites

Quick Build

# Clone repository
git clone https://github.com/uponatime2019/TypingDojo.git
cd TypingDojo

# Build x64 Debug
dotnet build "TypingDojo.csproj" -p:Platform=x64

# Run project
dotnet run --project "TypingDojo.csproj" -p:Platform=x64

Standalone Release Publish

# Publish fully self-contained portable distribution
dotnet publish "TypingDojo.csproj" -c Release -p:Platform=x64 -o "publish/TypingDojo_Portable"

⌨️ Keyboard Controls & Navigation Reference

Key / Shortcut Action Context
Esc Pause or abort current drill / test Active Typing Session
Enter Restart drill or confirm results Session Summary Dialog
Alt + Left Back to previous view Anywhere in App
Tab Shift focus to next interactive control Shell / Forms
Space Advance word during typing tests Lesson Player / Test Page

🗺️ Roadmap

  • Pure unpackaged standalone architecture with zero store dependencies
  • Progressive 29-lesson touch-typing course
  • Adaptive practice engine based on weak keys and slow bigrams
  • Three keyboard mini-games with dynamic character filtering
  • Printable HTML achievement certificates
  • Offline local profile system with JSON persistence
  • Custom exercise text importer (TXT, Markdown, EPUB)
  • Additional keyboard layouts (Colemak, Dvorak, AZERTY, QWERTZ)
  • Multi-language practice datasets (Spanish, French, German, Japanese Romaji)
  • Sound theme customization (Mechanical switches: Cherry MX Blue, Brown, Red)
  • Daily typing challenges with goal streaks and badges

🤝 Contributing & Community

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated!

  • 🐛 Found a bug? Submit an issue on the Issues tab.
  • 💡 Have a feature idea? Join discussions or propose an enhancement.
  • 🔀 Want to contribute code? Check out CONTRIBUTING.md for guidelines, branching standards, and setup instructions.

📄 License

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

About

A complete offline touch-typing trainer for Windows - progressive course, adaptive practice, timed tests, keyboard games and honest statistics

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages