pokeshell
pokeshell copied to clipboard
A featureful shell program to show pokemon sprites in the terminal.
pokeshell
A shell program to show pokemon sprites in the terminal.

Key features include:
| ✔️ animated sprites | ✔️ multiple pokemon | ✔️ terminal fit | ✔️ tab completions |
|---|
Dependencies
| - bash | - curl | - jq | - imagemagick | - chafa |
|---|
Installation
You can install pokeshell system-wide with the install.sh script like so:
sudo ./install.sh
This will allow you to run pokeshell anywhere on your system as well as add
shell completions.
An uninstall script is also provided:
sudo ./uninstall.sh
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:$PATH
Usage
pokeshell --help
or if running from this directory:
./pokeshell --help
Examples

Integration
hyfetch
hyfetch 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:

Sources
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: PokeAPI
- Specifically: PokeAPI/pokeapi and PokeAPI/sprites
Animated sprites: ProjectPokemon
Similar Projects
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)
that also fill this role and what makes pokeshell unique among them.
| Feature | pokeshell | pokescript | colorscripts |
|---|---|---|---|
| random | ✔️ | ✔️ | ✔️ |
| small | ✔️ | ✔️ | ✔️ |
| big | ✔️ | ❌ | ❌ |
| animated | ✔️ | ❌ | ❌ |
| terminal fit | ✔️ | ❌ | ❌ |
| genders | ✔️ | ✔️ | ❌ |
| multiple pokemon | ✔️ | ✔️ | ❌ |
| tab completion | ✔️ | ✔️ | ❌ |
| no internet | ❌ | ✔️ | ✔️ |
| block size # | ANSI | half | half |
| # dependencies - | 5 | 1 | 1 |
| cached speed + | 1x | 5.8x | 1.2x |
| first run speed + | 1x | 16x | 3x |
#: in order of resolution: ANSI > half > full
-: pokeshell uses bash, colorscripts uses Python
+: Normalized to pokeshell, tested with average of 500 runs, larger is faster
Other Similar Projects
- aflaaq/pokemon-icat Show Pokemon sprites in Kitty
- eramdam/pokemonshow Show Pokemon sprites using JavaScript
- yannjor/krabby Show Pokemon sprites using Rust
Other Pokémon Sprite Terminal Projects
- rmccorm4/Pokefetch Fetch Pokedex entries in your terminal
- HRKings/pokemonsay-newgenerations Cowsay for Pokemon
- 31marcobarbosa/pokeTerm Display random Pokemon sprite upon opening a terminal