Typing test
Typing test website build with React
NOTE: This is my recreation of already existing [monkeytype](https://monkeytype.com) The project is written primarily in TypeScript, distributed under the MIT License license, first published in 2021. Key topics include: react, reactjs, redux, theme, typescript.
typing-test

NOTE: This is my recreation of already existing monkeytype
This site is currently live: Visit Here
How to run locally
zshgit clone https://github.com/salmannotkhan/typing-test.git cd typing-test npm install npm start # to start local server at `localhost:3000` npm run build # to create production build run
Got new ideas?
Did you know? You can add your theme and wordlist ideas into typing-test.
Here is how you can do it:
To add new theme:
- Add theme colors into
src/stylesheets/themes.scssin following format:
scss.theme-name { --bg-color: background-color; --font-color: font-color; --hl-color: highlight-color; --fg-color: forground-color; }
Note:
highlight-coloris used for caret, wrong characters, timer, selected and onhover colors
forground-coloris used for correctly typed characters
Using hex codes for colors is recommended
To add new wordlist:
- Rename your wordlist as
<wordlist-name>.jsonand place it insidesrc/wordlists.
Important:
The JSON file should only contain single array of words/sentences.
Adding entry to options
- Add your theme/wordlist name into
src/components/Header.tsxin options:
tsxexport const options: Options = { time: [15, 30, 45, 60, 120], theme: [ "default", "mkbhd", "mocha", "coral", "ocean", "azure", "forest", "rose-milk", <theme-name> ], type: ["words", "sentences", <wordlist-name>], };
Important:
The following should be always same:
- wordlist-name in
Header.tsxand your wordlist file name- theme-name in
themes.scssandHeader.tsxshould always match otherwise themes won't work
-
Make a pull request
-
If it's good enough to merge, I'll merge it
Contributors
Showing top 10 contributors by commit count.
