Written in D using sumtype, pegged, htmld, requests and Vibe.d
RSS parsing uses libmrss.
source/cartastraccia/endpoints.d to add your desired visualizationpublic/css/* and the frontpage's Diet Template in views/index.dtThis program is compatible with a Unix-like OS, notably GNU/Linux. Other platforms (OSX, Windows) are not supported and they probably won't ever be.
Carta Straccia uses libmrss to parse RSS feeds. It can be installed in the following ways:
libmrss can be installed from the main repositories of some distros, using the appropriate package manager. Examples:
- Gentoo/portage: `emerge libmrss` - Debian/apt and derivatives: `apt install libmrss` - etc.
libmrss is not available for your distribution, it can be built and installed from source. See: https://github.com/bakulf/libmrss.Requires a working D compiler and Dub:
git clone https://github.com/gallafrancesco/cartastraccia.git
dub build -b release
You'll find the cartastraccia executable in the root project directory.
CLI options and sample first usage:
$ cartastraccia --help -d --daemon Start daemon -e --endpoint Endpoints to register [cli] -f --feeds File containing feeds to pull [feeds.conf] -l --host Bind to this address [localhost] -p --port Bind to this port [8080] -b --browser Absolute path to browser for HTML rendering [/usr/bin/elinks] -r --reload Reload feeds file -h --help This help information.
RSS feeds are gathered from a configuration file specified by the option "--feeds=" A feed configuration file should have the following format:
Title refresh-time url
where refresh time can be expressed in seconds s, minutes m, hours h or days d. You can see an example feeds.conf file included in the repository.
Cartastraccia is composed by a daemon and a client.
The daemon when launched parses the feed configuration file (exiting on failure). For every RSS feed a task (in the form of an actor) is launched
This project is licensed under the terms of the GPLv3 License.
Feel free to open issues and PRs. Current TODOs are: