selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Banditore logo

Self-host Banditore

6.0.0

GitHub starred repository release tracker with Atom feed

ReleaseOpen SourceMIT
Updatedlast year
LanguagePHP
Setup difficultyAdvanced
Stars
143
Port
8000 (PHP built-in development server (example))
Requires
MySQL, Redis
Install with Build from Source
Banditore web interface showing feed of GitHub releases

What is Banditore?

Banditore is a self-hosted PHP application built with Symfony that connects to your GitHub account via OAuth, retrieves your starred repositories, and periodically checks for new releases or tags. It generates a personal Atom feed you can subscribe to in any feed reader, providing a quiet, pull-based notification system for software updates. The application requires PHP 8.2+, MySQL 5.7+, and Redis for caching GitHub API requests. RabbitMQ and Supervisor are optional for scaling to multiple users via a queue-based worker system. Installation is done by cloning the repository, registering a GitHub OAuth application, installing Composer dependencies, setting up the database schema, and running the built-in PHP server or a proper web server. Two sync modes are supported: simple cron jobs for single-user instances, or RabbitMQ-backed workers for multi-user deployments. A status endpoint at /status provides health monitoring data. The project is licensed under MIT and actively maintained with the latest release 6.0.0 in September 2025.

Should you self-host Banditore?

Banditore scores 44/100 on selfhost.directory (how scoring works) and ranks #52 of 85 in Feed Reader. It has 143 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is advanced: plan for several services and some ongoing maintenance. It is MIT-licensed and written mostly in PHP.

Its closest alternative on selfhost.directory is RSSHub (85/100, 46 706 stars). It scores higher overall, so compare the two before you pick. See Banditore vs RSSHub side by side.

Features

  • Atom feed generation
  • Cron-based sync
  • GitHub API rate limit management
  • GitHub OAuth authentication
  • Health monitoring endpoint
  • Markdown to HTML conversion
  • Queue-based worker scalingOptional, requires RabbitMQ and Supervisor
  • Release and tag tracking

Banditore README

How to install Banditore

Install Banditore with Build from Source

Environment variables
APP_ENV=prod (set during composer install); other parameters defined interactively during composer install
  1. Clone the project

    git clone https://github.com/j0k3r/banditore.git
    
  2. Register a new OAuth GitHub application and get the Client ID & Client Secret (Authorization callback URL: http://127.0.0.1:8000/callback)

  3. Install dependencies using Composer:

    APP_ENV=prod composer install -o --no-dev
    
  4. Setup the database:

    php bin/console doctrine:database:create -e prod
    php bin/console doctrine:schema:create -e prod
    
  5. Launch the website:

    php -S localhost:8000 -t public/
    
  6. Configure cron jobs for sync (without RabbitMQ):

    # retrieve new release of each repo every 10 minutes
    */10  *   *   *   *   php /path/to/banditore/bin/console -e prod banditore:sync:versions >> /path/to/banditore/var/logs/command-sync-versions.log 2>&1
    # sync starred repos of each user every 5 minutes
    */5   *   *   *   *   php /path/to/banditore/bin/console -e prod banditore:sync:starred-repos >> /path/banditore/to/var/logs/command-sync-repos.log 2>&1
    

Requires PHP >= 8.2, MySQL >= 5.7, Redis. RabbitMQ and Supervisor optional for queue-based scaling.

How to configure Banditore

  • APP_ENVprodSymfony environment (prod, test, etc.)

    Symfony environment (prod, test, etc.)

    values: prod, test, dev

Banditore releases & version history

More in Feed Reader

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…