Newsfeed is a Go program that automatically reads RSS feed from a bunch of online news websites and organizes the feed into one. It stores the feed into an storage service (currently only memory).
- Add Microsiervos
- Add a
yaml
configuration file - Add support for flags
- Website and/or design
- Add a navigation bar
- Find a better way to organize and display the news
- Dark mode?
- Implement redis storage
Each API route in the HTTP server will return a response in JSON. If an error occurs, it will be displayed as the following json format:
???
depending on the error
{
"message": "json: unsupported type: map[interface {}]interface {}",
"data": "🖖🏻"
}
GET {{host}}/api/news
200 OK
500 InternalServerError
on error
{
"found": 1,
"news": [
{
"title": "The 'Super Mario Maker 2' Community Is a Haven of Player Creativity",
"link": "https://www.wired.com/story/super-mario-maker-2-community",
"published": "2019-07-10T13:00:00Z",
"description": "The hallowed halls of Mario have become, in the hands of fans, shrines to the gods of difficulty.",
"source": "Wired"
}
]
}
GET {{host}}/api/client
200 OK
on success500 InternalServerError
on error
{
"loadedSources": 6,
"fetchInterval": "10s",
"lastFetched": "2019-07-10T18:39:59.2294377+02:00",
"nextUpdate": "2019-07-10T18:40:08.5508029+02:00"
}
GET {{host}}/api/sources
200 OK
on success500 InternalServerError
on error
{
"found": 6,
"sources": [
{
"title": "Wired",
"homepage": "https://wired.com",
"rss": "https://www.wired.com/feed/rss",
"withChannels": true
}
]
}
This project is licensed under MIT License