Code Monkey home page Code Monkey logo

castero's Introduction

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:

$ pip3 install castero

Upgrading:

$ pip3 install castero --upgrade

Manual Installation

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

Dependencies

Running castero requires the following external dependencies:

  • Python >= 3.5 (check the output of python --version)
  • sqlite3
  • At least one of the following media players:
    • vlc >= 2.2.3
    • (mpv and libmpv) >= 0.14.0

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
    UP/DOWN     - navigate up/down in menus
    RIGHT/LEFT  - navigate right/left in menus
    PPAGE/NPAGE - scroll up/down in 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
    /           - filter the contents of the menu
    m           - mark episode as played/unplayed
    p or k      - pause/play the current episode
    f or l      - seek forward
    b or j      - seek backward
    =/-         - increase/decrease volume
    ]/[         - increase/decrease playback speed
    u           - show episode URL
    1-4         - change between client layouts

Importing/exporting feeds from another client

castero supports importing and exporting an OPML file of your subscriptions in order to easily transfer them between other podcast clients. Please refer to your other client's documentation for details on how/if it supports this format.

Importing and exporting from castero are available with command line flags. Run castero --help for details.

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

castero's People

Contributors

xgi avatar tistatos avatar nbastin avatar dgambrinus avatar arza-zara avatar buck10 avatar jose1711 avatar mtostenson avatar rand01ph avatar dependabot[bot] avatar hebecked avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.