A friend of mine wanted to set up an automated news forwarder for his community, and looking at existing options made the whole thing frustrating. Most commercial feed aggregators charge recurring subscriptions just for basic deduplication and webhooks.
Even when you pay, you get almost zero granular control over publisher weighting, alert cadence, or how the output is tailored with custom prompts and analytics. Meanwhile, subscribing to active industry feeds floods the channel with duplicate alerts whenever a breaking wire drops.
Instead of paying for SaaS tiers or overcomplicating things with vector databases and heavy pipelines, I built Celerum to handle this deterministically on tiny hardware like a cheap VPS or a Raspberry Pi. It is completely open source and runs as a single Go binary with an embedded SQLite database.
Here is the approach I took to keep resource usage low:
ETag and Last-Modified timestamps in SQLite. Unchanged feeds return 304 Not Modified with zero response body, finishing in under 50ms and consuming almost no bandwidth.Right now it dispatches to Telegram or generic HTTP webhooks. The entire engine sits under 15MB of RAM while monitoring active sliding windows.
The code and architecture documentation are up on GitHub: https://github.com/rafifmsn/celerum
It is far from perfect, just something I put together over a weekend to solve an immediate headache without spinning up paid infrastructure. Always open to feedback from anyone running similar self-hosted pipelines.
submitted by /u/rafifmsn