yggverse / pulsar
RSS aggregator for different protocols
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:project
Requires
- cboden/ratchet: ^0.4.4
README
RSS aggregator for different protocols
See also alternative branch to generate static gemtext
Features
-
src/crawler.php
- scan configured RSS feeds and dump results to SQLite -
src/cleaner.php
- auto clean deprecated records -
src/server.php
- server launcher for different protocols:
Example
nex://[301:23b4:991a:634d::feed]
- Yggdrasil instance by YGGverse
Install
apt install git composer php-fpm php-sqlite3 php-pdo php-mbstring
- install system dependenciesgit clone https://github.com/YGGverse/Pulsar.git
- get latest Pulsar versioncd Pulsar
- navigate project foldercomposer update
- install application dependenciescp config/example.json config/name.json
- setup your feed
Crawler
php src/crawler.php config=name.json
- crawl feeds configured byname.json
- manually or using crontabconfig
- relative (toconfig
folder) or absolute path to configuration file
Server
Launch as many servers as wanted, for different protocols and configurations (provided as the arguments)
php src/server.php protocol=nex config=name.json
- launchnex
protocol server withname.json
configconfig
- relative (config
folder) or absolute path to configuration fileprotocol
- server protocol, supported options:nex
- NEX Protocol
Autostart
systemd
Launch server as the systemd service
Following example mean application installed into the home directory of pulsar
user (useradd -m pulsar
)
# /etc/systemd/system/pulsar.service [Unit] After=network.target [Service] Type=simple User=pulsar Group=pulsar ExecStart=/usr/bin/php /home/pulsar/Pulsar/src/server.php protocol=nex config=name.json StandardOutput=file:/home/pulsar/debug.log StandardError=file:/home/pulsar/error.log Restart=on-failure [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload
- reload systemd configurationsudo systemctl enable pulsar
- enable service on system startupsudo systemctl start pulsar
- start server