mirror of
https://github.com/YGGverse/Pulsar.git
synced 2026-03-31 17:55:37 +00:00
2.5 KiB
2.5 KiB
Pulsar
RSS Aggregator for Gemini Protocol
Simple RSS feed converter to static Gemtext format, useful for news portals or localhost reading
Usage
git clone https://github.com/YGGverse/Pulsar.gitcp example/crawler.json crawler.json- setup your feed locationsphp src/crawler.php- grab feeds manually or using crontab
Config
Configuration file supports multiple feed channels with custom settings:
source- string, filepath or URL to the valid RSS feedtarget- string, relative or absolute path to Gemtext dumpsitemlimit- integer, how many items to display on page generatedtemplate- string, custom pattern for feed item, that supports following macros{nl}- new line separator{link}- item link{guid}- item guid{pubDate}- item pubDate, soon with custom time format e.g.{pubDate:Y-m-d H:s}{title}- item title{description}- item description
Resulting files could be placed to any local folder (for personal reading) or shared with others (using gmid, twins or any other server)
Server
Pulsar comes with build-in Titan-II server implementation.
It's especially useful for Yggdrasil users, who wish to host their feeds using plain IPv6 0200::/7 addresses as the CN record. Build-in server contain this feature implemented from the box.
Setup
cd Pulsar- navigate to the project foldercomposer update- download server dependencies with Composermkdir server/127.0.0.1- init server location (you can define any other destination,serverjust git ignored)cp example/host.json server/127.0.0.1/host.json- copy configuration example to the destination foldercd server/127.0.0.1- navigate to server folder created and generate new self-signed certificate
On example above, certificate could be generated with following command:
openssl req -x509 -newkey rsa:4096 -keyout key.rsa -out cert.pem -days 365 -nodes -subj "/CN=127.0.0.1"
- tip: for IPv6 address, just skip square brackets from
CNvalue
Launch
php src/server.php server/127.0.0.1- supported relative or absolute paths for systemd service
Open gemini://127.0.0.1 in Gemini browser!