Gabbro CLI 👾
About Gabbro
Gabbro is a simple CLI written in Go allowing a simplified interaction with the IGDB API.
Features
- Get informations about a game by searching by it name :
- Name, Description, Companies, Genres, Themes, DLCs, Rating, etc.
- Get informations about a character by searching by it name :
- Name, Description, Games, Genre, Species, etc.
- Get information about the different companies involved in a game by searching by it name :
For the moment, Gabbro works only on MacOs, binaries compatible with other platforms will arrive soon!
Installation
Setting up the CLI
To get started, you must download the lastest published binary of the application :
Download the Gabbro binary
Then put the binary in your $HOME/bin
directory and, if it's not already done, add $HOME/bin
to your $PATH
.
export PATH="$HOME/bin:$PATH"
Before we go, we still have one more step 😉
Configuration
You will now have to create crendentials for the IGDB API that you will put in the configuration file.
To do this, follow these steps :
- Sign Up with Twitch for a free account.
- Ensure you have Two Factor Authentication enabled.
- Register your application in the Twitch Developer Portal.
- Manage your newly created application.
- Generate a Client Secret by pressing [New Secret].
- Take note of the Client ID and Client Secret.
Once this is done, you can create a gabbro.yaml
file in your $HOME/bin
folder.
client-id: "your-client-id"
access-token: "your-access-token"
You can verify that the CLI is properly installed and configured by using this command:
❯ gabbro
Usage:
gabbro [command]
Available Commands:
game Get game informations
character Get character informations
companies Get information about the companies involved in a game
help Help about any command
Flags:
-h, --help help for gabbro
-i, --image print covers, logos and mugshots in terminal
Use "gabbro [command] --help" for more information about a command.
You are now ready to go ! 🚀
Usage
Game command
Use the game
command to get informations about a specific game :
❯ gabbro game [Game Name] [flags]
Flags:
-h, --help help for game
-i, --image print covers in terminal
Character command
Use the character
command to get informations about a specific character :
❯ gabbro character [Character Name] [flags]
Flags:
-h, --help help for character
-i, --image print mugshot in terminal
Companies command
Use the companies
command to get informations about companies involved in a game :
❯ gabbro companies [Game Name] [flags]
Flags:
-h, --help help for companies
-i, --image print logos in terminal
-o, --only string print only one company based on the role [developer, publisher, porting, support]
Note that for the --only flag, you can chain the values to get several results, for example: developer,support
Help command
Display all available commands :
❯ gabbro help
Get help of a specific command :
❯ gabbro [command] --help
Troubleshooting
- Images, being directly imported from IGDB can be badly displayed as for example being black on black background and thus being invisible in the terminal (especially for logos).
- Commands requiring several chained call api (
game
, companies
) may take a few seconds to run.
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Authors
See also the list of contributors who participated in this project.
Licence
This project is licensed under the MIT License - see the LICENSE.md file for details.
Show your support
Give a ⭐️ if this project helped you!