A REST API wrapper for Medium RSS Feed with built in cache mechanism and HTML Tokenizer that parses Medium's plain HTML string into DOM objects. Just set your medium's user profile name or publication and you're good to go!
Built wit v1.14.4 and tested using Golang v1.20.0.
There are some configurations which takes place in environment variable that needed to be setup first before you can start using the API which are:
Name | Mandatory | Default | Description |
---|---|---|---|
MEDIUM_PROFILE | Y | - | User or publication name |
MEDIUM_RSSFEED_URL | N | https://medium.com/feed |
Medium's feed base url |
BASE_URL | N | localhost | Host of the REST API server |
PORT | N | 8080 | Port of the REST API server |
GO_ENV | N | development | Environment stage |
To build, simply clone this repository and run
make build
You can run watcher.sh
to run the server and re-build automatically everytime the go file changes.
docker pull byteschneiderei/medium-rss-api
create a .env file like this:
MEDIUM_PROFILE=your-profile
MEDIUM_RSSFEED_URL='https://medium.com/feed'
BASE_URL=localhost
PORT=8080
GO_ENV=development
and run
docker run --env-file .env byteschneiderei/medium-rss-api
or just run
docker run -e MEDIUM_PROFILE=your-profile byteschneiderei/medium-rss-api
Currently, available endpoints are :
/version
- to check the application version
/health
- to check the application health
/medium
- to get the medium's RSS feed
Thanks goes to these wonderful people (emoji key):
Wahyudi Wibowo 💻 |
Thomas Strohmeier 📦 |
Sebastian Schaffer 📦 |
This project follows the all-contributors specification. Contributions of any kind welcome!
MIT License. Copyright (c) 2020 ByteSchneiderei GmbH