- main linting is now done by oxlint. eslint remains for linting json files in the frontend (until oxlint adds support) - move type checking to the lint step (with --type-check) this improves performance by removing a duplicated typescript parse task (instead of parsing for linting then again for type checking, it parses once for both) - add a `lint-fast` npm script to get some fast fail behavior. it simply lints with no type information - oxc plugins are still in preview, so the custom plugin that checks for `__testing` usage outside of tests runs outside the main linting job until performance is improved - fixes some type issues (and config issues) that were not visible due to a missing type check on some files. now type checking will run on every file that is linted - split up oxc config for easier management waiting https://github.com/oxc-project/tsgolint/pull/494 seeing around 3x improvement in type aware linting |
||
|---|---|---|
| .github | ||
| .husky | ||
| backend | ||
| docker | ||
| docs | ||
| frontend | ||
| packages | ||
| .dockerignore | ||
| .editorconfig | ||
| .gitignore | ||
| .npmrc | ||
| .nvmrc | ||
| .oxfmtrc.json | ||
| .oxlintrc.json | ||
| .prettierrc.json | ||
| commitlint.config.cjs | ||
| knip.json | ||
| LICENSE | ||
| monkeytype.code-workspace | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| README.md | ||
| turbo.json | ||
| vitest.config.ts | ||
About
Monkeytype is a minimalistic and customizable typing test. It features many test modes, an account system to save your typing speed history, and user-configurable features such as themes, sounds, a smooth caret, and more. Monkeytype attempts to emulate a natural typing experience during a typing test by unobtrusively presenting the text prompts and displaying typed characters in place, providing straightforward, real-time feedback on typos, speed, and accuracy.
Features
- minimalistic design, with optional advertisements and focus mode while typing
- type what you see, see what you type
- live errors, wpm, and accuracy displays
- a variety of test lengths and languages
- punctuation and numbers modes
- quotes
- themes
- smooth caret
- account system
- challenges and just-for-fun test modifiers
- and much more
Discord bot
On the Monkeytype Discord server, we added a Discord bot to auto-assign optional roles based on typing performance and challenge completion. You can find its code over at https://github.com/monkeytypegame/monkeytype-bot.
Bug report or Feature request
If you encounter a bug or have a feature request, send us an email, create an issue, create a discussion thread, or join the Discord server.
Want to Contribute?
Refer to CONTRIBUTING.md.
Code of Conduct
Before contributing to this repository, please read the code of conduct.
Security
To report a security vulnerability, please refer to SECURITY.md.
Credits
Montydrei for the name suggestion.
Everyone who provided valuable feedback on the original Reddit post for the prototype of this website.
All of the contributors have helped implement various features, add themes, fix bugs, and more.
Support
If you wish to support further development and feel extra awesome, you can donate, become a Patron or buy a t-shirt.
