Skip to content

marcus-koch-fs-dev/fluent-typing

Repository files navigation

Fluent Typing

Audio-driven typing trainer that builds muscle memory by reducing visual dependency. You hear the text, you type it, the reference text and an on-screen keyboard are optional assistance only.

Fluent Typing main page

Status: work in progress / pre-MVP. Core dictation loop and UI scaffolding in place; speech playback and full evaluation still ahead.

What it does

  • Primary loop: listen → type → evaluate → repeat.
  • Source text library: pick from built-in samples or paste/manage your own user texts (persisted locally).
  • Dictate appearance: tune font, size, line height and letter spacing; theme system with color presets.
  • Reference text & typing area: independently toggleable so you can train with or without visual aid.

Modes

  • Dictation — chunk-based audio playback gated by typed progress.
  • Motorik — letters, letter groups and short word patterns for finger memory.
  • Third mode — intentionally open; architecture is designed to extend without rewriting the dictation flow.

See docs/strategy.md for the full architecture and docs/features.md for the feature backlog / TODOs.

Tech stack

  • React 19 + TypeScript
  • Vite 8 (dev server & build)
  • React Router 7
  • Tabler Icons for iconography
  • Vitest + React Testing Library + jsdom
  • ESLint + Prettier

Scripts

npm run dev        # Vite dev server
npm run build      # type-check + production build
npm run test       # Vitest single run
npm run test:watch # Vitest watch mode
npm run lint       # ESLint
npm run format     # Prettier --write
npm run preview    # serve built dist/

Roadmap

Tracked in docs/features.md. Highlights still open:

  • Speech playback via Web Speech API
  • Local storage for texts and sessions (settings already persisted)
  • On-screen keyboard as optional assistance
  • Database-backed text/session storage (later)
  • Width slider for the dictate page, reset button, cursor style options
  • Database storage and multi-device sync (later)

Built with AI

This project is being developed together with AI coding assistants — Claude Code and Codex. Their configuration directories are intentionally tracked in this repo (.claude/, .codex/) so the workflow is visible.

Additional docs:

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages