/tukai

The app provides an interactive typing experience with switchable templates, designed to help users improve their typing speed and accuracy

Primary LanguageRustMIT LicenseMIT

Tukai

⌨ Touch typing terminal based application

About The Tukai

Tukai

A terminal-based touch typing application built in Rust using the Ratatui library. The app provides an interactive typing experience with switchable templates, designed to help users improve their typing speed and accuracy.

Features

  • Terminal-Based: Simple, lightweight, and runs in the terminal for easy accessibility on any platform
  • Rust-Based: Built with Rust for performance and reliability
  • Touch Typing Practice: Practice typing skills with real-time feedback on accuracy and speed
  • Switchable Templates: Choose between different templates to customize the typing practice experience
  • Stats preview: A built-in stats preview of already done tests

Getting Started

To get a local copy up and running follow these simple example steps.

Arch Linux installation

tukai is available as a package in the AUR.
You can install it with your preferred AUR helper. example:

paru -S tukai

Installation from the Cargo

cargo install tukai

Installation

Step 1. Install Rust

If you don't have Rust installed, follow the instructions on the official Rust website to install Rust.

Step 2: Clone the repository

Clone this repository to your local machine:

git clone https://github.com/hlsxx/tukai
cd tukai

Step 3: Run or build the application

cargo run
cargo build --release

Usage / Shortcuts

  • ESC: Exit the application
  • CTRL + R: Restart and generate a new text
  • CTRL + S: Switch between the templates
  • CTRL + J (left arrow): Switch to the Typing screen
  • CTRL + L (right arrow): Switch to the Stats screen

Roadmap

  • Highlighted typed text
  • Highlighted mistakes
  • Calculate WPM and accuracy after the run
  • Display remaining time
  • Template switch
  • Selectable type test times
  • Stats overview
  • Activity overview
  • Custom texts

License

Distributed under the MIT License. See LICENSE for more information.