castero

GitHub release PyPI CircleCI Codacy Grade Codacy Coverage

castero is a TUI podcast client for the terminal.

example client screenshot

Installation

Install from PyPi with pip:

$ pip install castero

Upgrading:

$ pip install castero --upgrade

Manual Installation

Warning: changes to the master branch are sometimes made before the documentation on this page is updated.

$ git clone https://github.com/xgi/castero
$ cd castero
$ sudo python setup.py install

Dependencies

Running castero requires the following external dependencies:

Usage

After installing castero, it can be run with simply:

$ castero

The help menu provides a list of controls and can be accessed by pressing h. Alternatively, see the list below:

Commands
    h            - show this help screen
    q            - exit the client
    a            - add a feed
    d            - delete the selected feed
    r            - reload/refresh feeds
    s            - save episode for offline playback
    arrows       - navigate menus
    page up/down - scroll menus
    enter        - play selected feed/episode
    space        - add selected feed/episode to queue
    c            - clear the queue
    n            - go to the next episode in the queue
    i            - invert the order of the menu
    p or k       - pause/play the current episode
    f or l       - seek forward
    b or j       - seek backward
    1-3          - change between client layouts

Configuration

The configuration file is located at {HOME}/.config/castero/castero.conf after the client has been run at least once.

Please see the default castero.conf for a list of available settings.

User data, including downloaded episodes and a database with your feed information, is located at {HOME}/.local/share/castero/. These files are not intended to be manually modified. Removing the database will simply cause castero to replace it with an empty one the next time you run the client.

Testing

This project uses pytest for testing. To run tests, run the following command in the project’s root directory:

$ python -m pytest tests

You can also run tests for an individual unit, i.e.:

$ python -m pytest tests/test_feed.py

License

MIT License