Minimal, terminal based typing speed tester.
Tapioca (/ˌtæpiˈoʊkə/) is a starch extracted from the storage roots of the cassava plant. Pearl tapioca is a common ingredient in Asian desserts...and sweet drinks such as bubble tea.
- Time or word/sentence count based typing speed tests
- Proper WPM results based on https://www.speedtypingonline.com/typing-equations
- Multiple word/sentence lists made out of classical books to spice your test up
- Cursor aware word lines
- Interactive menu
- ctrl+w support
- SSH server
typioca serve
- Dynamic word lists
- Custom word lists
- Linux/Mac/Win support
- ctrl+backspace and ctrl+h deletes the whole previous word
yay -S typioca-git
go install github.com/Sha-N0/typioca@latest
Note: This will install typioca in $GOBIN
, which defaults to $GOPATH/bin
or $HOME/go/bin
if the GOPATH environment variable is not set.
Ensure you have the latest Go version, as typioca only works with Go 1.20+.
sudo apt install golang
will not give the latest Go version. Follow the below to install the lastest Go verison:
sudo apt remove golang-go
sudo apt purge golang-go
Visit the official Go download page and get the latest version. For example, to download and install Go 1.20 or later:
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.zshrc
source ~/.zshrc # or source ~/.bashrc if you use Bash
go version
You should see something like go version go1.22.5 linux/amd64
.
echo 'export GOPATH=$HOME/go' >> ~/.zshrc
echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.zshrc
echo 'export GO111MODULE=on' >> ~/.zshrc
source ~/.zshrc # or source ~/.bashrc if you use Bash
go install github.com/Sha-N0/typioca@latest
brew tap Sha-N0/tap
brew install typioca
nix-shell -p typioca
zypper install typioca
scoop bucket add extras
scoop install typioca
xbps-install typioca
winget install Sha-N0.typioca
- Checkout the code
make build
./execs/typioca
make
go
- Create your word list in a new line separated manner:
custom
words
are
the
best
or in the same JSON format as the official ones:
{
"metadata" : {
"name" : "My words",
"size" : 5,
"packagedAt" : "1970-01-01T00:00:00Z",
"version" : 1
},
"words": [ "custom", "words", "are", "the", "best" ]
}
- Place your configuration to platform specific location:
Platform | User configuration |
---|---|
Windows | %APPDATA%\typioca\typioca.conf or C:\Users\%USER%\AppData\Roaming\typioca\typioca.conf |
Linux | $XDG_CONFIG_HOME/typioca/typioca.conf or $HOME/.config/typioca/typioca.conf |
macOS | $HOME/Library/Application Support/typioca/typioca.conf |
Config example (it is TOML):
[[words]]
name = "Best hits '22"
enabled = false
sentences = false
path = "/home/words/best-hits-22.json"
[[words]]
name = "Even better hits '23"
enabled = true
sentences = false
path = "/home/words/better-hits-23.json"
Note: Notice that custom wordlist controls are greyed-out, personal configuration must be handled via the file only.
Built with bubbletea
🧋