You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
9 months ago | |
---|---|---|
.github/workflows | 9 months ago | |
src | 9 months ago | |
.dockerignore | 9 months ago | |
.editorconfig | 9 months ago | |
.gitignore | 9 months ago | |
Dockerfile | 9 months ago | |
README.md | 9 months ago | |
nodemon.json | 9 months ago | |
package-lock.json | 9 months ago | |
package.json | 9 months ago | |
sample.env | 9 months ago | |
tsconfig.json | 9 months ago |
README.md
readerss
basic express server for saving online articles to read later.
To do
- basic API
- add an article
- RSS endpoint so you can sync it with your feed aggregator of choice
- deduplicate articles
- delete an article?
- get configuration from environment variables
- add a database (stored as JSON but i would like to use sqlite3. i just have no idea what i'm doing.)
- add docker support
- make a browser bookmarklet for quickly saving articles
- log some useful info on startup, like the bookmarklet code
- find a slightly better name
Will not do
- make a frontend. i'm keeping it simple, why not fork it and add one yourself? 😉
Setup
Docker
docker run -d \
-p 3000:80 \
-e API_KEY=e44dd04a559c71f0 \
-v ./readerdata:/data \
reeseovine/readerss:latest
Docker Compose
version: '3.8'
services:
readerss:
image: reeseovine/readerss:latest
restart: unless-stopped
ports:
- 3000:80
volumes:
- ./readerdata:/data
environment:
- API_KEY=5184424c7804a089 # generate a strong secret with `openssl rand -hex 32`
# these variables are optional, and the defaults are provided for reference.
- PORT=80
- DB_FILE=/data/db.json
- FEED_TITLE=Reading list
- FEED_DESCRIPTION=Articles saved to be read later
Environment variables
variable | description |
---|---|
API_KEY | The password needed to be able to use the API. |
PORT | The port within the container that the server runs on. |
DB_FILE | The path and filename of the database file within the container. |
FEED_TITLE | The name of your reading list feed that shows up in feed readers. |
FEED_DESCRIPTION | A short description to accompany the above. |
Usage
- Copy the bookmarklet code from the logs and replace
<SERVER_ADDRESS>
with the IP address or domain name. - Create a new bookmark in your browser (in the bookmarks bar for easy access, perhaps) with the name "Read later" (or whatever you want) and set the URL to the bookmarklet code.
- Go to an article that you want to save, click the bookmark, et voila!
- Add the RSS feed endpoint (
<SERVER_ADDRESS>/feed?key=<API_KEY>
) to your feed reader of choice.