tillcash / rssc

rssc provides a real-time, self-hostable regex-oriented customization service for atom, rss and json feeds.

Home Page:https://rssc.fly.dev/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rssc provides a real-time, self-hostable regex-oriented customization service for atom, rss and json feeds.

Usage

rssc uses get request parameters to read user’s preferences. following are the supported parameters:

  • src: the source URL of the feeds. Example: https://hnrss.org/newest
  • t: the type of desired feeds (that rssc will return), can be rss, atom or json.
  • descriptionf: regular expression filter to filter feeds based on the description property.
  • titlef: regular expression filter to filter feeds based on the title property.
  • contentf: regular expression filter to filter feeds based on the content property.
  • linkf: regular expression filter to filter feeds based on the link property.
  • net: boolean (1 or 0) (default to 0 when omitted) whether to use the .NET engine regex instead of Go’s.

All regex should be valid RE2 regex syntax (in case of net, see MS’ Regular Expression Language).

Examples

Replace https://rssc.fly.dev/ in the following examples with your instance of rssc (can be a localhost:8080 if self-hosted).

Self-host

To host rssc locally, install it using Go:

go install github.com/larrasket/rssc@latest

Set environment variable for PORT, if user doesn’t set a PORT value, rssc will use :8080 by default.

PORT=4040 rssc

Now rssc should be running at localhost:4040. You can use the same examples provided, with replacing fly domain with your localhost.

Notes

  • RE2 is much safer than the .NET Regex, that’s to say, all the good features that .NET engine enables you to use come with a risk cost and ends up enabling catastrophic backtracking, therefore a timeout of 5 seconds is currently enabled on the fly.dev instance when using net=1.
  • rssc is pre-alpha. Please report bugs here (url)

About

rssc provides a real-time, self-hostable regex-oriented customization service for atom, rss and json feeds.

https://rssc.fly.dev/

License:GNU General Public License v3.0


Languages

Language:Go 96.2%Language:Dockerfile 3.8%