Help belongs in the app.
And it should build itself.
Two things are wrong with how software gets explained — and Splain is built on the opposite of both.
First, plainly: Splain is a self-hosted tool developers add to their Laravel/Filament web app — it turns product help into guided, code-anchored, in-app walkthroughs that can't silently go out of date.
It costs a week to write. Someone sits down and hand-authors a knowledge base — every step, every screenshot, every "now click the blue button" — for a UI they're looking at right now and will change next sprint. Then a new hire arrives and someone walks them through it by hand anyway. Then the next release lands and the whole library gets rewritten. The tax never stops.
And it's a lie the moment it ships. That knowledge base lives on a separate site, divorced from the code. The interface moves; the article doesn't. It still loads, still ranks, still reads as authoritative — and quietly walks users off a cliff. Nobody notices for months, because nothing fails.
Here's what we believe instead.
-
Help belongs on the live page.
The moment a user is stuck, the answer should be right there — on the real screen, in the real app — not behind a link to a third-party docs site, not in another tab, not in a twelve-minute video. They never leave the page they're working on.
-
It should draft itself from your code.
Your app already knows what it does — its routes, its components, its forms describe it. Splain reads that and writes the first draft of the walkthrough. You refine it — in your editor, or visually in the Pro Studio (a visual, point-and-click editor for your guides) — instead of staring at a blank page authoring steps you'll rewrite next release. The knowledge base, the tutorials, the help articles you'd normally sink days into — they start themselves, and arrive as something a user can actually follow instead of an article they have to decode.
-
It must be anchored to the code, or it rots.
Each step is tied to a specific button or field on the page, and an automatic check re-runs every guide against your app whenever you build it. Delete an element a guide depends on, and the build goes red — the same way a broken test does. Guidance that can lie silently isn't guidance; it's a liability with good SEO.
-
It runs entirely on your own servers.
Self-hosted, running in your own app. Your users' screens are yours — no third-party script in the loop, nothing phoning home. A built-in Privacy Mode blurs sensitive data for demos and screen-shares; it's a presentation aid, and we say exactly that. It is not a security control, and calling it one would be the kind of lie this whole product exists to prevent.
-
It states its limits out loud.
If a claim — in the product, the docs, or on this page — ever outruns what the code actually does, that's a bug, and you should report it like one. Honesty isn't the marketing voice here. It's the specific thing the software is built to enforce: "it works" only ever means "there's a test that proves it."
Built-in beats bolt-on.
Guidance that's created from your app, delivered inside your app, and fails your build the day it stops being true. Cheaper to make, closer to the user, impossible to silently rot. That's the whole idea — and the glowing dot in the bottom corner is Splain itself running on this page — click it to watch the manifesto explain itself.