Skip to content
RepoQuarry

Build · Intermediate · A weekend

Build a brand, topic and sentiment monitor with alerts using open-source software

Track what's being said about your brand, competitors or a topic, score the mood, and get an alert when something spikes.

Instead of paying for Feedly, ChatGPT Plus, Zapier or Make.

What you'll build

A watcher for the conversations you care about: mentions of your product, a competitor, a keyword or a set of accounts. New posts and articles are collected all day, a model tags each one by topic and sentiment, and you get an alert when the mood turns or a story takes off, plus a daily summary. People build this with Grok and n8n because Grok can read X. This version uses open-source feeds and a local model, and is honest about what X data costs.

Blueprint

RSSHub turns searches, accounts and forums into feeds, FreshRSS collects them and saves keyword searches, and Activepieces sends new items to Ollama for topic and sentiment tags, then alerts you when a threshold is crossed.

  1. RSSHub Feeds for searches, accounts and forums FreshRSS
  2. FreshRSS New matching items (API) Activepieces
  3. Activepieces Each item, asking for topic and sentiment Ollama
  4. Ollama Tags and a one-line reason Activepieces
  5. Activepieces Alerts and a daily summary You

The repos

  1. 01 · Turn searches into feeds RSSHub

    Self-hosted RSS feed generator that makes feeds for thousands of sites that have none, from social networks to news and forums.

    Setup
    Medium; Docker Compose is the recommended path, with Redis and an optional headless browser for some routes source
    Hardware
    Not checked yet
    Paid extras
    None for most routes; X (Twitter) routes need a logged-in auth_token cookie or paid Pay-Per-Use developer API keys
    ★ — AGPL-3.0 Partial: 7/8 facts Official docsGitHubReplaces Feedly
  2. 02 · Collect and filter FreshRSS

    Self-hosted multi-user RSS reader in PHP with saved searches, web scraping for sites without feeds, extensions and mobile app APIs.

    Setup
    Medium; Docker or one-click hosts (YunoHost, PikaPods, Cloudron), or manual install with a web server and PHP 8.1+ source
    Hardware
    Light server; runs even on a Raspberry Pi 1 source
    Paid extras
    None; needs a web server, PHP and a database (SQLite works)
    ★ — AGPL-3.0 Confirmed: 8/8 facts Official docsGitHubReplaces Feedly
  3. 03 · Tag topic and sentiment Ollama

    Local model runner that downloads and serves open LLMs (Gemma, Qwen, DeepSeek, gpt-oss and more) with a CLI and local API.

    Setup
    Easy; one-line install script or installer, then ollama run source
    Hardware
    Apple M-series or x86 (CPU only) on Mac; 4GB for Windows binary; RAM not stated source
    Paid extras
    None for local use; Ollama Cloud plans optional (Pro $20/month)
    ★ 184k MIT Confirmed: 8/8 facts Official docsGitHubReplaces ChatGPT Plus
  4. 04 · Alerts and summaries Activepieces

    Self-hostable no-code automation builder with 280+ TypeScript integrations ("pieces") that are also exposed as MCP servers.

    Setup
    Medium, install script or a single docker run with embedded database source
    Hardware
    Production sizing: app 1 vCPU / 1 GB per ten workers; each worker 0.5 vCPU / 1 GB; Postgres 2 vCPU / 4 GB; Redis 1 vCPU / 1 GB source
    Paid extras
    None required; enterprise licence and Activepieces Cloud are optional
    ★ 25k MIT Confirmed: 8/8 facts Official docsGitHubReplaces Zapier, Make

Step by step

Install commands change, so each step links to the repo's own docs for the exact commands.

  1. Decide what to watch

    Write down the names, keywords and sources that matter, and what counts as an alert: for example ten negative mentions in an hour, or any post from a named account.

  2. Make feeds for each source

    Run RSSHub and find routes for your sources, such as keyword searches, subreddits and news sites. For X, read the route's notes on the credentials it needs before you rely on it.

    Uses RSSHub · its docs

  3. Collect them in FreshRSS

    Install FreshRSS, add the feeds and save a search for each keyword so related items group together. Turn on its API for the automation.

    Uses FreshRSS · its docs

  4. Tag with a local model

    Write a prompt that returns JSON with topic, sentiment (positive, neutral or negative) and a one-line reason. Check it on fifty real items and adjust until you agree with most of its calls.

    Uses Ollama · its docs

  5. Alert and summarise with Activepieces

    Every few minutes, fetch new items from FreshRSS, tag them with Ollama, store the results in a sheet or table, and send an alert when your rule is met. Add a daily summary of the main topics and the overall mood.

    Uses Activepieces · its docs

Watch out

X data is the hard part. RSSHub's X routes need your own account cookie or paid X developer API keys, and automated collection must follow X's terms. News sites, blogs, Reddit and forums are much easier.

Take it further

  • Draft a reply for each negative mention and send it to you for approval.
  • Chart sentiment by week to see how a launch landed.
  • Track competitors' release notes alongside social posts.

Shared builds

Nobody has shared one yet. Be the first.

Built your own version and put it on GitHub as open source? Share your build

Questions

Can Grok do this for X?

Grok can read X, and Grok Bot can be tagged on X posts. To automate it outside Grok Bot you still need data access, through xAI's paid API or X's own paid API. The only Grok X-monitoring n8n template we found was paid.

How accurate is sentiment from a small local model?

Good enough to spot a spike, not to judge single posts. Check a sample by hand each week, and use the reason line to see why it scored something negative.

Every repo here is open source, still maintained and checked against its own documentation. How we check →

Cookie preferences

Choose what we may store in your browser. You can change this any time from Cookie settings in the footer.

Essential

Security, and remembering this choice. rq-consent · 12 months

Always on