Overview
Couik is a terminal-based typing test designed for speed, aesthetics, and simplicity. Built with Bubble Tea, it provides a smooth and responsive experience right in your CLI.
Whether you want to warm up before coding, challenge your friends, or just track your WPM progress, Couik has you covered.
Features
- Timed Mode: Test yourself against the clock (
15s, 30s, 60s, 120s).
- Word Mode: Practice with a set number of words (
10, 25, 50, 100).
- Custom Text: Load your own text files or paste custom strings.
- History Tracking: Keep track of your progress over time with built-in stats.
- Beautiful UI: Modern, clean interface with real-time feedback.
- Cross-Platform: Works on Linux, macOS, and Windows.
Installation
Linux
Arch Linux (AUR)
yay -S couik-bin
Debian / Ubuntu
Download the .deb file from Releases and run:
sudo apt install ./couik_*_linux_amd64.deb
Fedora / RHEL
Download the .rpm file from Releases and run:
sudo dnf install ./couik_*_linux_amd64.rpm
Binary (Generic)
tar -xzf couik_*_linux_amd64.tar.gz
sudo mv couik /usr/local/bin/
Windows (Not stable yet. You can use wsl)
- Download the
.zip archive from Releases.
- Extract and run
couik.exe.
- (Optional) Add to your PATH for global access.
macOS
Download the binary from Releases or use Go:
go install github.com/fadilix/couik/cmd/couik@latest
Build from Source
Requires Go 1.21+.
go install github.com/fadilix/couik/cmd/couik@latest
Usage
Simply run couik to start a default session.
couik [flags]
Command Flags
| Flag |
Short |
Description |
Example |
--time |
-t |
Run a timed test (seconds) |
couik -t 60 |
--words |
-w |
Run a word count test |
couik -w 50 |
--file |
-f |
Use a custom text file |
couik -f ./code.txt |
--custom |
-c |
Use a custom string |
couik -c "Hello World" |
--history |
-i |
View your past results |
couik -i |
--help |
-h |
Show help message |
couik -h |
Controls
- Start Typing: The test begins immediately.
ESC / Ctrl+C: Quit the application.
Tab: Restart the test.
Ctrl+L: Restart the test with the same text.
Shift+Tab: Change game mode.
Configuration
You can customize couik using the config subcommand.
couik config set [key] [value]
Available Settings
| Key |
Valid Values |
Description |
Example |
mode |
quote, time, words |
Sets the default game mode. |
couik config set mode quote |
time |
15s, 30s, 60s, 120s |
Sets the test duration or word count limit. |
couik config set time 30s |
quote_type |
small, mid, thicc |
Adjusts the length/volume of the quotes. |
couik config set quote_type mid |
dashboard_ascii |
path to .txt file |
Sets a custom ASCII art for the dashboard. |
couik config set dashboard_ascii ~/art.txt |
Custom Dashboard Art
You can personalize the dashboard by adding your own ASCII art. Simply create a text file with your art and point couik to it.
To set a custom ASCII logo, use the following command:
couik config set dashboard_ascii /path/to/your/ascii.txt
Alternatively, you can manually edit the configuration file (typically located at /home/username/.config/couik/config.yaml on Linux):
mode: ""
dashboard_ascii: /home/username/.config/couik/logo.txt
quote_type: ""
time: ""
Subcommands
config: Configure your preferences.
completion: Generate autocompletion scripts.
Contributing
Contributions are welcome! Feel free to open issues or submit pull requests.
- Fork the repository.
- Create your feature branch (
git checkout -b feature/amazing-feature).
- Commit your changes (
git commit -m 'Add some amazing feature').
- Push to the branch (
git push origin feature/amazing-feature).
- Open a Pull Request.