#pokemon #terminal #arch-linux #cli

app krabby

Print pokemon sprites in your terminal

11 releases

new 0.2.1 Nov 9, 2024
0.2.0 Sep 28, 2024
0.1.8 Nov 12, 2023
0.1.7 Aug 3, 2023
0.1.4 Apr 23, 2022

#103 in Command line utilities

Download history 47/week @ 2024-07-26 10/week @ 2024-08-02 27/week @ 2024-08-30 45/week @ 2024-09-06 8/week @ 2024-09-13 21/week @ 2024-09-20 192/week @ 2024-09-27 38/week @ 2024-10-04 36/week @ 2024-10-11 38/week @ 2024-10-18 11/week @ 2024-10-25 12/week @ 2024-11-01 140/week @ 2024-11-08

210 downloads per month

GPL-3.0 license

22MB
278 lines

krabby

Crates.io version AUR version

Krabby is mostly a Rust rewrite of phoney badger's pokemon-colorscripts with some extra features.

Table of contents

Features

  • Pokemon from every generation, including shinies, megas, gigantamax, and regional variants
  • Print random pokemon (with filters for generations and different forms)
  • Print pokemon by name
  • Print pokedex entry together with the sprite
  • Configuration file, right now only for language and shiny rate

Installation

Arch Linux x86_64 (and derivatives)

From the AUR using your favorite AUR helper

yay -S krabby-bin

Or alternatively you can manually download the PKGBUILD file from the repository, then run

makepkg -si

There is also the development package krabby-git that tracks the main branch.

Ubuntu/Debian x86_64 (and derivatives)

Download the latest .deb release. Then run (replacing v.v.v with the version number)

dpkg -i krabby_v.v.v_amd64.deb

Homebrew

Add the tap:

brew tap yannjor/krabby

Install:

brew install krabby

Installing from source (other distros and MacOS/Windows)

To install krabby from source, you will need Rust. Installation instructions can be found here.

Now using cargo, run

cargo install krabby

Make sure you have .cargo/bin added to your shell PATH. This can be done by adding the following to your .profile, .bash_profile or .zprofile

export PATH="$PATH:$HOME/.cargo/bin"

Usage

Run the help command krabby help to see the following help message.

USAGE:
    krabby <SUBCOMMAND>

OPTIONS:
    -h, --help       Print help information
    -V, --version    Print version information

SUBCOMMANDS:
    help      Print this message or the help of the given subcommand(s)
    list      Print list of all pokemon
    name      Select pokemon by name. Generally spelled like in the games. A few exceptions are
                  nidoran-f, nidoran-m, mr-mime, farfetchd, flabebe type-null etc. Perhaps grep the
                  output of list if in doubt
    random    Show a random pokemon. This command can optionally be followed by a generation
                  number or range (1-9) to show random pokemon from a specific generation or range
                  of generations. The generations can be provided as a continuous range (eg. 1-3) or
                  as a list of generations (1,3,6)

To get more detailed information about a subcommand you can also view its help, for example

krabby help random

To get the help of the random subcommand.

Examples

Print a specific pokemon

krabby name charizard

Print a specific shiny pokemon

krabby name spheal -s

Print a specific pokemon together with its pokedex entry

krabby name mudkip -i

Print an alternative form of a pokemon

krabby name blastoise -f mega

Print a random pokemon (gens 1-9)

krabby random

Print random pokemon from generations 1-3

krabby random 1-3

Print a random pokemon from generations 1,3 and 6

krabby random 1,3,6

Print a random pokemon excluding megas, gigantamax and regional variants

krabby random --no-mega --no-gmax --no-regional

Configuration

When the program is run, a TOML config file will automatically be created in the user's config directory (usually ~/.config) under krabby/config.toml if it doesn't exist already.

On MacOS the config will be in: /Users/<username>/Library/Application Support/krabby On Windows this will be: C:\Users\<username>\AppData\Roaming\krabby

# The language to use when printing the pokemon's name and/or description.
# Possible options include en (English), fr (French), de (German), ja (Japanese),
# zh_hans (Chinese with simplified characters), zh_hant (Chinese with traditional characters)
language = 'en'

# The probability to show a shiny pokemon when using the random command
shiny_rate = 0.0078125

Credits

The pokemon sprites for krabby were generated using sprites from PokéSprite and converted to unicode using Phoney Badger's pokemon-generator-scripts. The pokemon data was obtained from PokéAPI.

Similar projects

Dependencies

~3–12MB
~113K SLoC