Skip to content
Learn how to touch type from the comfort of your terminal and challenge your friends for a match 🎈 😄.
TypeScript JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
paragraphs
src
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE
README.md
gulpfile.js
package.json
process.yml
tsconfig.json
tslint.json

README.md

Practice touch typing and compete with your friends all from the comfort of your shell and become a typing ninja 💥.

Build Status Codacy Badge

But this has already been done. Why should I use this client?

Because most other shell clients don't offer the features that we do

Features

  • Practice mode (offline mode)
  • User stats (words per minute, time taken)
  • Online mode (have a type-race by spawning up a server and sharing it with your friends)
  • Ask for a rematch after the race ends (online mode)
  • Can view the top 10 Highscores in online mode

Installation

run npm i --global typeracer-cli from your command line

Possible Errors

When you have installed this tool some times later you could find some error when you start typerace.

This may be because new update might have been rolled out and you have to update to latest version.

How to update

Its same as installation just run npm i --global typeracer-cli from your command line

Now even after that if you see any errors, follow the below steps

  • find .nvm folder in your home directory.

  • cd to .nvm/versions/node/${your node version}/bin and delete typerace file

  • cd to .nvm/versions/node/${your node version}/lib/node_modules and delete typeracer-cli folder

  • run npm - -global typeracer-cli

These steps should resolve the isssue. If it does not please open an isssue.

Usage

run typerace or typerace -h to its usage

Output

Usage: typerace [options] [command]

  Options:

    -h, --help          output usage information

  Commands:

    practice|p          Start typeracer
    online|o [options]  Start game in online mode

Practice mode

  • typerace p to start practice mode.

Preview of practice mode

practice

Online mode

Prevew of online mode

online

  • typerace o -f to start online mode which will prompt a question

Are you starting server for race (y/N) ?

Now 2 cases are there

  • If yes

    • You will share Room to join for race, Number of racers, Number(sort of password)
    • All the above will be prompted if you select yes and all of your friends should fill them out same.
  • If no

    • Ask for Room to join for race, Number of racers, Number(sort of password) from your friend who created a private room to race.

Highscores

To view the top 10 Highscores in online mode.

run typerace o -s

Enjoy 🔥

Contributing

If you think of a feature enhancement or find a bug kindly raise an issue. We also welcome you to work on your issues by just commenting down on them with "I would like to work on this". All contributions are appreciated.

General Setup

  • fork the repository

  • clone your forked repository

  • set the upstream remote

  • cd to folder and run npm install

  • create a .env file in root directory and put following in it

DATABASE=your mongoDB url
  • run npm start

But I don't know how to code, is there any other way I can contribute?

Yes, ofcourse you can we need lots of paragraphs so that our users don't get bored by typing out the same text over and over again. To add a paragraph follow these steps:

  • Add paragraphs in paragraphs/para.json
  • run npm test
  • Important: all tests should pass as you would get a test failure for duplicate paragraphs.
  • Find same paragraphs then run npm test
  • If all tests pass locally then Open a PR

Support Us

We are a bunch of undergrads passionate about software development looking to make cool stuff. A little motivation and support helps us a lot. If you like this nifty hack you can support us by doing any (or all 😉 ) of the following:

  • ⬆️ Upvote on producthunt producthunt
  • ⭐️ Star us on Github and make us trend so that other people can know about our project.
  • 👏 Clap for us on Medium
  • Tweet about us
  • Share this on Facebook
  • Install it and increase our download count on npm
  • Donation (Coming Soon)

Contributors

You can’t perform that action at this time.