winget install --id=arghena.katharsis -e
CLI tool for generating RSS feeds.
Katharsis is a command-line tool designed to generate RSS feeds efficiently. It allows users to create and customize RSS feeds by parsing HTML files and extracting article metadata. The tool supports flexible configuration through a TOML file, enabling users to specify feed properties such as title, description, site URL, and output path. Additionally, it provides options for sorting articles by publication date and handling images associated with each article.
Key Features:
Audience & Benefit: Ideal for developers and content creators looking to streamline their RSS feed creation process. Katharsis automates the generation of RSS feeds, saving time and effort compared to manual methods.
Katharsis can be installed via winget using the command winget install arghena.katharsis
.
> [!NOTE] > You can download the prebuilt binary artifacts from the Releases page.
WinGet
winget install arghena.katharsis
Cargo
B(inary)Install:
cargo binstall katharsis@1.0.0-canary.29
Crates.io:
cargo install --locked katharsis@1.0.0-canary.29
Git:
git clone https://github.com/arghena/katharsis.git --branch v1.0.0-canary.29 --depth 1
cd katharsis && cargo install --locked --path .
Paru
paru -S katharsis
Apt
curl -fsSLO https://github.com/arghena/katharsis/releases/download/v1.0.0-canary.29/katharsis_1.0.0-canary.29_amd64.deb
sudo apt install katharsis_1.0.0-canary.29_amd64.deb
curl -fsSL https://github.com/arghena/katharsis/releases/download/v1.0.0-canary.29/katharsis-v1.0.0-canary.29-x86_64-unknown-linux-gnu.tar.gz | tar -xz
mv katharsis-v1.0.0-canary.29-x86_64-unknown-linux-gnu/katharsis /usr/local/bin
> [!NOTE] > You can refer to our examples.
Run the following command to generate a katharsis.toml
file in the current directory:
katharsis init
Run the following command to create a default rss.xml
:
katharsis
Command | Description |
---|---|
init | Generates a katharsis.toml file in the current directory |
help | Displays help information |
Option | Description |
---|---|
-c | Specifies a katharsis.toml file as the config |
-h | Displays help information |
-V | Displays the current version of Katharsis |
> [!NOTE]
> If you do not specify the -c
option, the katharsis.toml
file in the current directory will be used by default.
You can refer to the RSS 2.0 at Harvard Law for more detailed documentation.
Property | Description |
---|---|
rss.title | The title of the website |
rss.description | A description of the website |
rss.site_url | The main URL of the website |
rss.image | Path to the channel's logo |
rss.copyright | Copyright information |
rss.language | Preferred language |
rss.output | Path to the local output RSS file |
> [!NOTE]
>
> - The rss.site_url
property should not include a trailing slash (for example, https://example.com
rather than https://example.com/
).
> - The rss.image
property is relative to the rss.site_url
(for example, favicon.png
corresponds to https://example.com/favicon.png
).
> - The rss.output
property specifies the path relative to the working directory (for example, rss.xml
corresponds to ./rss.xml
).
Property | Description |
---|---|
article.title | The tag containing the article's title |
article.description | The tag or attribute containing the article's description |
article.input | The HTML files that needs to be parsed |
article.author | Information about the article's author |
article.prefix | The relative prefix for the article's URL |
article.content | The tag or attribute containing the article's content |
article.date | The tag containing the article's publication date |
article.image | The image files to be used as the article cover |
article.sort | Whether to sort articles by their publication date |
> [!NOTE]
>
> - The article.input
property corresponds to the file stem (*
), which is the same as the article's URL slug.
> - The article.date
property's tag must include a datetime attribute, and the attribute value must follow the %Y-%m-%d
format.
> - The article.image
property's folder name (**
) must match the article's URL slug.
Please refer to our API Docs.
Please refer to our CONTRIBUTING.md.
> [!NOTE] > If you believe you have found a security vulnerability in Katharsis, we encourage you to responsibly disclose this and NOT open a public issue.
Please refer to our SECURITY.md.
The version naming of Katharsis follows Semantic Versioning 2.0.0.
> [!NOTE] > When Katharsis releases a new major version, the previous stable version will be designated as an LTS version.
The LTS version of Katharsis provides security updates and bug fixes for six months.
Katharsis | MSRV1 | Codename | Released at | End of Life |
---|---|---|---|---|
v1.0.0 | 1.85.0 | Telescope | - | - |
Katharsis is distributed under the MIT License.
Minimum Supported Rust Version ↩