#typing #tui #monkeytype #test #cli

app katype

A fast typing test from terminal writted in Rust 🦀

2 releases

new 0.2.2 Feb 15, 2025
0.2.1 Feb 7, 2025

#81 in Command-line interface

Download history 117/week @ 2025-02-04 110/week @ 2025-02-11

227 downloads per month

MIT license

24KB
426 lines

katype

Katype Logo
A fast typing test from terminal writted in Rust 🦀
GitHub License GitHub Release GitHub code size in bytes

asciicast

Features

  • Fast: katype can start blazingly fast and run it without any lags or delay.
  • Lightweight: There are a lot of features and katype only uses around 3 Mb of RAM.
  • Single-file: Don't need for additional files or packages to run. Just download it and test your fingers.
  • Customizable: Bring your own settings, stylings and experience different universes.
  • Statistics: See your own results and share with your friends in fancy way.
  • And much more: You can add your wanted feature to this project. Please look at our CONTRIBUTING area

Getting Started

katype                      # test your limits in typing
katype -h                   # see all avaliable options on cli
katype -v                   # see version of the program. Update katype if it is old.
katype -a 5                 # Use 5 random words for test.
katype -a 123               # Use 123 random words for test without delay.
katype -g "hello world"     # Create your own test with words: hello world
katype -t 15                # Set a 15 seconds timeout for test

Installation

katype can be installed in just 1 easy step.

  1. Install Binary: katype runs on many major platforms. If you are having issues with katype on your platform, please open an issue

The recommended way to install is from cargo:

cargo install katype

Or katype can be install via curl:

curl -sSfL https://raw.githubusercontent.com/kadircy/katype/master/install.sh | sh

Options

When running katype, the following arguments are:

  • --amount, -a
    • Sets the amount of words to type. Default is 15.
    • --amount 22 will set the amount of words to 22.
    • -a 5 will set the amount of words to 5.
  • --language, -l
    • Sets the language of words to type. Default is en.
    • --language es will set the language to Spanish.
    • -l en will set the language to English.
  • --code, -c
    • Set all the options and words with a Base64 code.
    • --code ABCDEFG... will override all the options and words with words in the code.
    • -c ABCDEFG... will do the same.
  • --ready-text, -r
    • --ready-text will set the "Be ready" text to custom one.
    • -r will set the "Be ready" text to custom one.
  • --timeout, -t
    • --timeout 15 will set a timeout of 15 seconds.
    • -t 3 will set a timeout of 3 seconds.
  • --generate, -g
    • --generate "example dot com" will generate custom code for words: example dot com.
    • -g "i hate rust" will do the same.
  • --json, -j
    • --json will print the results in JSON format.
    • -j will do the same.

Contributing

Thank you for your interest in contributing to katype! We welcome contributions, whether it's fixing bugs, adding features, improving documentation, or helping with testing.

How to Contribute

  1. Fork the Repository: Start by forking this repository to your own GitHub account.
  2. Create a New Branch: Make sure to create a new branch for your changes.
    git checkout -b feature-branch
    
  3. Make Changes: Implement your changes or additions. Be sure to follow the coding style and include relevant tests if applicable.
  4. Commit Your Changes: Write clear, concise commit messages that explain your changes.
    git commit -m "Description of your changes"
    
  5. Push to Your Fork: Push your branch to your forked repository.
    git push origin feature-branch
    
  6. Create a Pull Request: Open a pull request from your branch to the master branch of the katype repository. Please ensure the PR description clearly explains what your changes do.

Code of Conduct

Please follow the Rust Code of Conduct in all interactions. Be respectful and considerate to all contributors.

If you have any questions or need assistance, feel free to reach out via issues or discussions.

License

This project is licensed under the MIT license - See the LICENSE file for details.

Dependencies

~3–4MB
~68K SLoC