
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.
Configuration
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 |
Build
To build, simply clone this repository and run
make build
Developing
You can run watcher.sh
to run the server and re-build automatically everytime the go file changes.
Installation & Usage
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
Endpoints
Currently, available endpoints are :
/version
- to check the application version
/health
- to check the application health
/medium
- to get the medium's RSS feed
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
License
MIT License. Copyright (c) 2020 ByteSchneiderei GmbH