podclaw

Crates.iopodclaw
lib.rspodclaw
version1.0.1
sourcesrc
created_at2023-05-13 01:15:24.852853
updated_at2023-05-13 01:15:24.852853
descriptionPodclaw is a small, pure-Rust CLI application for managing podcast RSS feeds and downloading episodes from those podcasts.
homepage
repositoryhttps://github.com/RealArcanePhysics/podclaw
max_upload_size
id863435
size77,393
ArcanePhysics (RealArcanePhysics)

documentation

README

Podclaw

Podclaw is a small, pure-Rust CLI application for managing podcast RSS feeds and downloading episodes from those podcasts.

Installation

Currently, you can just go and grab the latest release for your OS(currently only Linux is available) and extract it somewhere. You might want to put the executable on your PATH for easier access.

Building from Source

Mostly the same as any other Rust project. Clone the repo into a folder, open a terminal, and run 'cargo build'. You might need the 'librust-openssl-dev' package on Linux; not sure about Windows.

Usage

To show off basic usage of Podclaw, this will guide you through registering a podcast and downloading the first episode from it. Quickly before that, it's worth mentioning I used TrueColor for this program. It might not look right if you're on a terminal that doesn't support it.

Adding a Podcast

In a terminal, run a command like this.

podclaw add example [LINK] 'Podcasts' 1

This command adds a podcast with an alias of 'example'. An alias is a simple, case-insensitive name used to refer to this podcast in other commands. '[LINK]', of course, should be replaced with a link to an RSS feed. We then set this podcast's download path to a folder named 'Podcasts', which will be where are downloaded episodes will be placed. Finally, we set the hour interval between automatic cache updates to 1. Everytime this duration is elapsed, Podclaw will cache the RSS feed or update this cache.

Downloading an Episode

podclaw get example 0

After adding a podcast, we can use a command like above to download the episode at index 0 for the podcast with the alias 'example'.

Some Other Features

Here's some bullet points for a few other commands that Podclaw features.

  • 'list', which can list all registered podcasts or their episodes
  • 'inspect', which allows you see details on any podcast or episode
  • 'lock', which lets you lock a podcast to prevent it from being edited, updated, or removed(until unlocked that is)

Finally, if you should need it, you can find Podclaw's storage file in '~/.config/podclaw' on Linux.

Contributing

I'm still pretty new to Rust, and I'd love to hear some feedback. Feel free to open an issue or pull request, if you'd like.

Used Crates

Commit count: 8

cargo fmt