Taps: turning feed-less websites into real feeds
Neurowire taps are per-host CSS-selector recipes that turn a plain HTML listing page into a real feed, so a site with no RSS becomes a first-class source.
A Neurowire tap is a per-host recipe, written in CSS selectors, that turns a plain HTML listing page into a real feed. Point it at a site with no RSS or Atom, tell it which elements are the items and where the title, link, and date live, and that site becomes a first-class source. This is the line between “we support feeds” and “we make anything a feed.”
Why do taps matter at all?
Most feed tools stop at the formats. They read RSS, they read Atom, maybe JSON Feed, and if a site does not publish one of those, the tool shrugs. The trouble is that a large share of the open web ships no feed at all. A blog with a clean archive page, a newsroom, a changelog, a forum index: all of these are perfectly readable to a human and invisible to a feed reader.
Taps close that gap. Instead of treating a feed-less site as out of scope, Neurowire treats its HTML as just another input format that happens to need a recipe. Once a tap exists for a host, that source flows into the canonical model exactly like an RSS feed would, and everything downstream (meshes, constructs, every serializer) works on it unchanged.
How does a tap actually work?
A tap is small. It names the host it applies to, then carries a set of CSS selectors that map the page structure onto the feed model.
- An item selector that matches each entry in the listing, for example each row or card in an archive.
- Per-item selectors for the title, the link, and the published date.
- Optional selectors for a summary or author when the page exposes them.
The parser fetches the page, runs the selectors, and emits one item per match into the model. Because it produces the same canonical feed any other parser produces, the rest of the engine never has to know the source was scraped HTML rather than a published feed.
How is a tap different from the Taps Pack?
This is worth separating, because the names are close. A tap is the mechanism: the per-host selector recipe described above. The Taps Pack is a curated collection built on that mechanism, shipping 271 sources across 24 themes ready to use out of the box. One is the engine, the other is a batteries-included library of feeds for it. The Taps Pack post covers the curated set in detail.
Where to start
If you want to write your own tap, the selector format is documented at neurowire.starside.io, and the parser lives in the Neurowire repo on GitHub. If you just want feeds, grab the Taps Pack and you have 271 sources without writing a single selector. Either way, the moment a tap exists, that site stops being a thing you check manually and becomes a real feed in your reading. Or skip the setup and assemble your feed in the Neurowire App. More open-source work sits under projects.