apollo icon indicating copy to clipboard operation
apollo copied to clipboard

:four_leaf_clover: Comand-line media list manager and API client written in Golang.

Apollo

Apollo is a handy console-based way of organizing all of your media titles and keeping track of what you are currently watching, reading, and playing. It started out as a project for my own usage, but I have since decided to put it out there on GitHub for all to enjoy.

Screenshot

ScreenShot

Features

  • Create lists for movies, TV series, video games, and books.
  • Sort the lists by year released, status, or ranking.
  • Rank each entry on a scale of 1 to 6.
  • Create collections of entries.
  • Set each entry as being active, passive, or inactive.
  • Print any list to a plain text file.

Commands

  • /help displays the help file.
  • /quit quits the application.
  • /open <tab> opens a specific tab.
  • /close closes the current tab.
  • /set <config> <value> sets an option to a specified value.
  • /config displays the current configuration.

Key-bindings

  • Ctrl c quits the application.
  • Alt [num] switches to the num-th tab.
  • Enter sends the current command, or toggles the input.
  • 1 switches to the 'passive' view.
  • 2 switches to the 'active' view.
  • 3 switches to the 'inactive' view.
  • 4 switches to the 'all' view.
  • s sorts the entries.
  • D deletes the current entry.
  • e edits the current entry.
  • r toggles ranking.
  • a toggles the current entry's state.
  • [/] changes the rating of the current entry.
  • Left/Right changes the episodes of the current entry.
  • p prints the current view to a file.

Installation

This whole project was done using Golang.

Once Go is installed properly, fetch this repository.

go get github.com/finiks/apollo

Next, move to the repository source of the project and compile the application.

cd $GOPATH/src/github/finiks/apollo
go install

Lastly, you can run Apollo through its binary file.

cd $GOPATH/bin
./apollo

At the first launch, configuration.json and database.json will be created and stored in ~/.config/apollo/.

Development State

Apollo is now completely fulfilling my needs. That being said, if someone were to want to contribute to this project, please feel free to either message me for more information or to directly send in a pull request.