A shell program to show pokemon sprites in the terminal.
Key features include:
| ✔️ animated sprites | ✔️ multiple pokemon | ✔️ multilingual | ✔️ terminal fit | ✔️ tab completions |
|---|
| - bash | - curl | - jq | - imagemagick | - timg/chafa |
|---|
You can install/uninstall pokeshell using just.
By default the install directory is /usr/local/, which will allow you to run pokeshell
anywhere on your system as well as add shell completions.
You can also specify the install directory, but you'll have to make sure that directory is on your $PATH
if you want to run pokeshell from anywhere.
# install
just install [<install_dir>]
# uninstall
just uninstall [<install_dir>]If you don't have just or don't want to use it, you can directly use the install.sh and uninstall.sh scripts.
# install
./install.sh [install_dir]
# uninstall
./uninstall.sh [install_dir]Remember to prepend the install/uninstall command with sudo if you need to.
If you do not want to install then you can still run pokeshell anywhere
by adding the following lines to your ~/.bashrc.
export PATH=/path/to/pokeshell:$PATHpokeshell --helpor if running from this directory:
./bin/pokeshell --helphyfetch is an active fork of
neofetch. Most importantly, it
has fixes for properly displaying ascii. The updated neofetch can be run
with the neowofetch
command and uses your existing neofetch config.
To use pokeshell with hyfetch add the following to your neofetch
config file: ~/.config/neofetch/config:
image_backend="ascii"
image_source=$(POKESHELL_COMMAND)
where POKESHELL_COMMAND is what you would run in the terminal.
For example, including the below in your neofetch config file
image_backend="ascii"
image_source=$(pokeshell politoed)
and running neowofetch gives the following:
A great amount of gratitude goes to the following projects, without which
pokeshell would not be possible. Please star/support these sources!
Small sprites: msikma/pokesprite
Big sprites and localization: PokeAPI
- Specifically: PokeAPI/pokeapi and PokeAPI/sprites
Animated sprites: ProjectPokemon
pokeshell is not the first player in the pokemon shell art niche and nor will it
be the last. (I just hope that the next project can take these ideas and only
expand on them.) Below is a feature list of some projects (
acxz/pokescript,
phoneybadger/pokemon-colorscripts,
talwat/pokeget-rs)
that also fill this role and what makes pokeshell unique among them.
| Feature | pokeshell | pokescript | colorscripts | pokeget-rs |
|---|---|---|---|---|
| random | ✔️ | ✔️ | ✔️ | ✔️ |
| small | ✔️ | ✔️ | ✔️ | ✔️ |
| big | ✔️ | ❌ | ❌ | ❌ |
| animated | ✔️ | ❌ | ❌ | ❌ |
| terminal fit | ✔️ | ❌ | ❌ | ❌ |
| multilingual | ✔️ | ✔️ | ❌ | ❌ |
| genders | ✔️ | ✔️ | ❌ | ❌ |
| tab completion | ✔️ | ✔️ | ❌ | ❌ |
| multiple pokemon | ✔️ | ✔️ | ❌ | ✔️ |
| no internet | ❌ | ✔️ | ✔️ | ✔️ |
| block size # | ANSI | half | half | half |
| # dependencies - | 5 | 1 | 1 | 0 |
| cached speed + | 1x (76.9 ms) | 11x (7.1 ms) | 2x (37.5 ms) | 37x (2.1 ms) |
| first run speed + | 1x (241.2 ms) | 34x (7.1 ms) | 6x (37.5 ms) | 115x (2.1 ms) |
#: in order of resolution: ANSI > half
-: pokeshell/pokescript uses bash, colorscripts uses python, pokeget-rs uses rust
+: Normalized to pokeshell, tested with hyperfine, larger is faster
- aflaaq/pokemon-icat Show Pokemon sprites in Kitty
- eramdam/pokemonshow Show Pokemon sprites using JavaScript
- rmccorm4/Pokefetch Fetch Pokedex entries in your terminal
- HRKings/pokemonsay-newgenerations Cowsay for Pokemon
- 31marcobarbosa/pokeTerm Display random Pokemon sprite upon opening a terminal