Skip to content
This repository has been archived by the owner on Dec 26, 2023. It is now read-only.

byvko-dev/feedlr

Repository files navigation

Feedlr

Invite

Feedlr is a simple Discord Bot + Backend Services that allow you to add RSS Feeds to your Discord Server.

This is mostly a proof of concept, and is not intended to be used in production. Feel free to submit an Issue if you want something improved, refactored.

Features

  • Unlimited feeds per server/channel
  • Simple to use native slash commands
  • Good proxies for fetching feeds and bypassing automate bot detection
  • Extended logic for parsing images (from RSS image tags, from body, from meta tags)

Why?

I wanted to track some RSS feeds on my Discord server and found out that most services are either paid or not very good.

Setup

  1. Clone the repository
  2. Install Taskfile (https://taskfile.dev/#/installation)
  3. Copy .env.example to .env and fill in the values

Development

  1. Run task prisma to build the Prisma Client and push the Prisma Schema to your database
  2. Run task bot-dev to start the Discord bot in development mode
  3. Run task worker-dev to start the Worker service in development mode
  4. Run task scheduler-dev to start the Scheduler service in development mode

You can also run task dev to start both the Discord bot and the backend services in development mode.

Deployment (Railway Template)

Deploy on Railway
Note: Deploying MongoDB in Railway did not work with Prisma (It seems to require a multi-node cluster), though I gave it very little effort. Feel free to submit a PR if you would like to fix this.

Deployment (Manual)

Pre-requisites:

  • Discord Bot Token
  • Railway Account
  • MongoDB Deployment
  • Manager/Self hosted AMQP Server

Deployment Steps:

  1. Create a new project in Railway
  2. Configure shared environment variables, include all variables from .env.example
  3. For each service - bot, worker, scheduler:
    1. Create a new Service in the project and point it to this repository
    2. Add all shared environment variables to the Service in Settings
    3. If the option is available, set the config path to railway.[service name].toml, e.g. railway.bot.toml
      • If the option is not available, you will need to manually change the Settings to match the config file
    4. Deploy the Service

About

Feedlr is a simple Discord Bot that can link an RSS feed to a channel

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages