The most customizable typing website with a minimalistic design and a ton of features. Test yourself in various modes, track your progress and improve your speed.
Find a file
Jack b60e6905ce
Made username non optional (#2859)
* reduced code repetition

* throwing error when no name provided

* stopping signout if no current user

* expanded to 16 chars

* moved code to popup file

* added google sign up popup

* checking if name is available in the backend

* deleting account if popup was closed
uncommented sign up process
addd functions to enable and disable input

* added google sign up event to avoid circular dependency

* hiding by default

* name is no longer optional
user is deleted if its database object is not found

* using loader to indicate background activity
2022-04-23 19:46:41 +02:00
.github Linted Files according to the .prettierrc (#2758) Harry-Hopkinson 2022-03-23 22:51:55 +01:00
backend Made username non optional (#2859) 2022-04-23 19:46:41 +02:00
bin Fix (#2550) 2022-02-20 22:29:39 +01:00
frontend Made username non optional (#2859) 2022-04-23 19:46:41 +02:00
.editorconfig
.eslintignore remove run-script-os and change the script back (#2573) 2022-02-23 01:07:48 +01:00
.eslintrc.json Moved firebase to new modular version 9 sdk (#2727) 2022-03-19 12:33:25 +01:00
.gitignore v1.14.1 (#2745) 2022-03-21 21:22:47 +01:00
.npmrc Add .nvmrc file and updated Node.js installation instructions (#1968) by mtthwn 2021-10-13 19:44:20 +01:00
.nvmrc chore: updated node/npm versions (#2440) 2022-02-08 00:28:56 +01:00
.prettierignore Api overhaul (#2555) by Bruception 2022-02-22 20:55:48 +01:00
.prettierrc TypeScript FrontEnd: Add Account Files (#2494) 2022-02-19 17:44:27 +01:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md v1.14.1 (#2745) 2022-03-21 21:22:47 +01:00
LANGUAGES.md Updating the language.md (#2786) taboov 2022-03-28 18:41:25 +02:00
LICENSE
package-lock.json Save exact for all packages (#2853) 2022-04-23 19:42:20 +02:00
package.json Save exact for all packages (#2853) 2022-04-23 19:42:20 +02:00
QUOTES.md v1.14.1 (#2745) 2022-03-21 21:22:47 +01:00
README.md Remove JavaScript and CSS from the README (#2847) 2022-04-20 17:55:16 +02:00
SECURITY.md Documentation edits (#2675) 2022-03-11 19:32:55 -06:00
THEMES.md Added sub alt color, fixed various styling inconsistencies (#2804) 2022-04-07 22:04:43 +02:00


TypeScript Sass HTML5

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 the experience of natural typing 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
  • 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/Miodec/monkey-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.

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 that have helped with implementing various features, adding themes, fixing 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.