Skip to content
voltcrashPublic

About

an opinionated typing test platform, available on your nearest browser or terminal

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

18,607 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Caret

Caret

Caret is an independent, open-source typing test. It offers multiple test modes, languages, themes, live speed and accuracy feedback, and account-based result history.

Take a free typing test, learn how to practice typing, or explore code typing practice.

This project began from the Monkeytype codebase and now has its own roadmap. We retain the original contributors' work and attribution in the Git history. Caret is licensed under GPL-3.0.

Caret does not support self-hosting. For self-hosting, use Monkeytype.

Development

Use Node 26.13.0 and Vite+ (vp) for every command; pnpm 12.16.1 is the package manager under the hood. Follow the development setup guide for Better Auth and backend configuration. See the architecture overview for the codebase and stack.

vp install
vp exec cp frontend/.dev.vars.example frontend/.dev.vars
# Set DATABASE_URL and CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_HYPERDRIVE
# in frontend/.dev.vars to the same development Neon branch first.
vp run --filter @caret/frontend db:migrate
vp run dev

The TanStack Start app, its API and a development Neon branch run at http://localhost:3000.

Typing rules run in the platform-independent Rust engine. The website loads its Wasm SDK only in the browser; Cloudflare continues serving SSR, auth and APIs. Install the toolchain pinned in rust-toolchain.toml with its Wasm target. Build bootstrap generates the bindings automatically; vp run engine:parity checks native and built-browser behavior against immutable original references. vp run engine:lint and vp run engine:fmt check Rust. Measured budgets are in performance budgets.

Offline terminal

The native Ratatui app uses the same engine on Linux/macOS without Wasm. It includes English words/quotes, five typing modes, settings, durable local history and JSON export. No account, sync or first-run download. vp run terminal:dev runs it; vp run terminal:test and vp run terminal:test:pty check native behavior and terminal lifecycle. vp run terminal:test:emulator -- --emulator kitty --command /usr/bin/kitty checks actual Kitty keyboard input in a private Linux display; Ghostty and Alacritty are also supported by the harness. See the terminal docs for tools. vp run terminal:package prepares a licensed binary archive. Installed users need no development runtime. See release verification/status for tested platforms and pending real-terminal checks; no release published yet.

Contributing

See CONTRIBUTING.md and the code of conduct. Report bugs in the Caret repository.

Contact and security

Public site: caret.voltcrash.com. Maintainers use production operations for the official site's deployment and updates.

Use GitHub discussions for general questions and feature ideas, and the security policy for private vulnerability reports.

About

an opinionated typing test platform, available on your nearest browser or terminal

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages