mirror of
https://github.com/YGGverse/Pulsar.git
synced 2026-03-31 17:55:37 +00:00
init sqlite implementation
This commit is contained in:
parent
423f88e94e
commit
13ebc7bcbc
8 changed files with 672 additions and 152 deletions
30
README.md
30
README.md
|
|
@ -2,32 +2,18 @@
|
|||
|
||||
RSS Aggregator for [Gemini Protocol](https://geminiprotocol.net)
|
||||
|
||||
Simple RSS feed converter to static Gemtext format, useful for news portals or localhost reading
|
||||
## Components
|
||||
|
||||
* [x] `src/crawler.php` - scan configured RSS feeds and dump results to SQLite (see also [FS branch](https://github.com/YGGverse/Pulsar/tree/fs))
|
||||
* [ ] `src/nex.php` - Build-in server for [NEX Protocol](https://nightfall.city/nps/info/specification.txt)
|
||||
* [ ] `src/gemini.php` - Build-in server for [Gemini Protocol](https://geminiprotocol.net)
|
||||
|
||||
## Example
|
||||
|
||||
* `nex://[301:23b4:991a:634d::feed]/index.gmi` - [Yggdrasil](https://github.com/yggdrasil-network/yggdrasil-go) instance by YGGverse
|
||||
* `nex://[301:23b4:991a:634d::feed]` - [Yggdrasil](https://github.com/yggdrasil-network/yggdrasil-go) instance by YGGverse
|
||||
|
||||
## Usage
|
||||
|
||||
1. `git clone https://github.com/YGGverse/Pulsar.git`
|
||||
2. `cp example/config.json config.json` - setup your feed locations
|
||||
3. `php 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 feed
|
||||
* `target` - string, relative or absolute path to Gemtext dumps
|
||||
* `item`
|
||||
* `limit` - integer, how many items to display on page generated
|
||||
* `template` - 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](https://github.com/omar-polo/gmid), [twins](https://code.rocket9labs.com/tslocum/twins) or any other [server](https://github.com/kr1sp1n/awesome-gemini#servers) for `gemtext` statics)
|
||||
2. `cp config/example.json name.json` - setup your feed
|
||||
3. `php src/crawler.php name.json` - grab feeds manually or using crontabdes
|
||||
Loading…
Add table
Add a link
Reference in a new issue