FeedCord is a dead-simple RSS Reader designed to integrate seamlessly with Discord. With just a few configuration steps, you can have a news feed text channel up and running in your server.
Due to work and relocating, I will be taking a brief pause in development for this software. I plan to pick development back up in late June/beginning of July this year. Feel free to open issues, but know that I myself won't be getting to them for some time. I will gladly take pull requests in the meantime. Thanks for the support!
If you wish to show your support to help development
Your appsettings.json
is a collection of instances:
{
"Instances": [],
}
Each webhook gets one instance
. Here's an example of a single instance:
{
"Id": "Gaming News Channel",
"RssUrls": [
"https://examplesrssfeed1.com/rss",
"https://examplesrssfeed2.com/rss",
"https://examplesrssfeed3.com/rss",
],
"YoutubeUrls": [ "" ],
"DiscordWebhookUrl": "https://discord.com/api/webhooks/...",
"RssCheckIntervalMinutes": 3,
"EnableAutoRemove": true,
"Color": 8411391,
"DescriptionLimit": 200,
"Forum": true
}
Here is an appsettings.json example of running two webhooks for two different channels:
{
"Instances": [
{
"Id": "Gaming News Channel",
"Username": "Gaming News",
"RssUrls": [
"https://examplesrssfeed1.com/rss",
"https://examplesrssfeed2.com/rss",
"https://examplesrssfeed3.com/rss"
],
"YoutubeUrls": [ "" ],
"DiscordWebhookUrl": "https://discord.com/api/webhooks/...",
"RssCheckIntervalMinutes": 3,
"EnableAutoRemove": true,
"Color": 8411391,
"DescriptionLimit": 200,
"Forum": true
},
{
"Id": "Tech News Channel",
"Username": "Tech News",
"RssUrls": [
"https://examplesrssfeed4.com/rss",
"https://examplesrssfeed5.com/rss",
"https://examplesrssfeed6.com/rss"
],
"YoutubeUrls": [ "" ],
"DiscordWebhookUrl": "https://discord.com/api/webhooks/...",
"RssCheckIntervalMinutes": 3,
"EnableAutoRemove": true,
"Color": 8411391,
"DescriptionLimit": 200,
"Forum": true
}
]
}
There are more optional properties to configure. You can view all properties and their purpose here
Your docker-compose.yaml
will look be set up like this:
version: "3.9"
services:
myfeedcord:
image: qolors/feedcord:latest # for amd64 architecture
# image: qolors/feedcord:latest-arm64 # For arm64 architecture (Uncomment this line and comment the above if using arm64)
container_name: FeedCord
restart: unless-stopped
volumes:
- ./PATH/TO/MY/JSON/FILE/appsettings.json:/app/config/appsettings.json
Replace ./PATH/TO/MY/JSON/FILE/
with the actual path to your appsettings.json
.
Note: Depending on your architecture, use qolors/feedcord:latest
for amd64 architecture, or qolors/feedcord:latest-arm64
for arm64 architecture. Ensure to uncomment the appropriate line in the docker-compose.yml as per your system's architecture. If you need a different please open a request.
In the folder you created, run the following command from your terminal:
docker-compose up -d
This will pull the latest FeedCord image from Docker Hub and start the service.
If you want to update your current image to latest it's quite simple. In your FeedCord directory run:
docker-compose pull
followed by
docker-compose up -d
This will pull the latest image and restart your current container with it
With the above steps completed, FeedCord should now be running and posting updates from your RSS feeds directly to your Discord channel.
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.