zeeper 1.3.3

a playlist tool for zeepkist
Documentation
# Zeeper

<!--toc:start-->

- [Zeeper]#zeeper
  - [Description]#description
  - [Getting Started]#getting-started
    - [Dependencies]#dependencies
    - [Installation]#installation
      - [Cargo]#cargo
      - [Binary]#binary
    - [Executing Program]#executing-program
  - [Help]#help
  - [Author]#author
  - [Version history]#version-history
  - [License]#license
  - [Acknowledgements]#acknowledgements

<!--toc:end-->

A playlist tool for Zeepkist

## Description

Zeeper allows you to create a playlist from GTR data, you can get your favorite maps, random maps, hot and popular too.

## Getting Started

### Dependencies

- install rust/cargo <https://www.rust-lang.org/tools/install>

### Installation

#### Cargo

`cargo install zeeper`

if you're building from source `cargo install --path /path/to/repo`

#### Binary

download binary from releases, put in `~/.local/bin/zeeper` if on Linux, if on Windows IDK.

### Executing Program

in the terminal run `zeeper [OPTIONS] <CMD>`

## Help

helper command `zeeper help [SUBCMD]`
if levels don't load, that is a steam/Zeepkist issue. Or they changed file formats :3

## Author

me

## Version history

- 0.1.0
  - favorites
  - random
  - hot
  - popular
- 1.0.0
  - windows/mac support (just changed to Path instead of strings to write the file)
- 1.1.0
  - now can get levels from records
  - updated hot and popular, now can take limit and offset args
- 1.1.1
  - I forgot to remove an early return lol
- 1.1.2
  - streamlined inner workings in prep for possible GUI
- 1.2.0
  - now uses Zworpshop where possible (only random tracks) (can use GTR with -G)
  - added macros to use internally
- 1.2.1
  - finally updated to new web API, so it works now
  - removed arguments that are no longer used
  - ZEEP_PLAYLIST_DIR env variable is used, so you don't have to specify output Dir
  - Favorites limit default is now 100
  - Hot and Popular no longer have arguments due to new GTR/Zworpshop API
  - updated macros for new web API's
  - little extra info outputted
- 1.2.2
  - removes duplicate tracks based on track UID
- 1.3.0
  - bunch of internal changes for upcoming update
  - Command changes!!!
    - Records doesn exist anymore
      use `wr` and `pb` instead `recent` doesnt exist anymore
    - `hash` and `workshop` accept a ',' separated list
    - `favorites` take a gtr id only, limit and offset args are dead,
    - `id-steam` gets your gtr id, using your steam id
  - also playlists are now formated so goodbye to the ONE LOOONG LINE we had before
- 1.3.2
  - fixed json parsing error for `wr` and `pb`
- 1.3.2
  - `favorites` now works the way it used to
    it has `-l, --limit` and `-o, --offset` args again
    aswell as `-S, --steamid`, it also works now :P
  - `id-discord` added, works how youd expect
  - `workshop` now can take a list of ids, it only worked with one before
  though that was a bug
  - output is more user friendly
- 1.3.3
  - added `--no-purge` fag, this will increase the chance
  of a workshop loading error.
  - zeeper now uses `ZEEP_GTR_ID` environment var
  so you dont have to put your id everytime
  - added `merge` command to merge playlists
  and you dont have to provide a full path, it will check
  the current dir for the playlists, then it checks your playlist dir
  (which is `--dir` or `ZEEP_PLAYLIST_DIR`)
  - plus internal changes

## License

This project is licensed under the [GPLv3](https://www.gnu.org/licenses/gpl-3.0) license - see [LICENSE](LICENSE.txt) file for details.

## Acknowledgements

ThunderNerd for creating [GTR](https://zeepkist-gtr.com) and [zworpshop](https://api.zworpshop.com/)