Paste one line and any site can collect feedback, bugs, and ideas — spam-filtered, beautifully. Then the part nobody else does: your team or your AI agents open the pull request that fixes it — drafted, linked, and merged by a human.
live in 30 seconds · no code to write · no backend
“the annual toggle doesn't update the total 😕”
collect anything · route everywhere · ship the fix
Every other feedback tool ends at the inbox. This one carries the spark all the way down the wire — from someone typed this to an agent shipped the fix, with the PR linked right back to the note. We read every note. Then we ship it.
We hand you your widget — copy it once, paste it anywhere. Works on any site, even plain HTML. Nothing to build, nothing to host. Ready in 30 seconds.
A friendly button appears in the corner. Visitors tap it, type, and send — feedback, bug reports, ideas, even contact forms. Spam is filtered automatically.
Everything lands in one tidy dashboard, and gets routed to Slack, Sheets, or your tools. Triage with your team — or let your agents ship the fix and mark it resolved.
One script tag or a plain form. The browser posts cross-origin; the site needs nothing of its own. Static-site friendly by design.
Lightbulb button, single-textarea modal, type selector, ⌘+Enter, and a confetti thank-you you can make your own.
A REST API and an MCP server let your team or your coding agents read a note and open the pull request that closes it.
One unified pipe. Slack and signed webhooks today — and a webhook is the Zapier / Make / Sheets path. Telegram & email next.
One-tap reactions, per page or per feature, when a full note is more than you need.
Pick the color or match the host site automatically. Whitelabel the widget, the emails, the dashboard.
Connect your tools and your AI agents read a bug, find the file, and open a draft pull request for a human to merge — with the fix linked right back to the note. They work through a secure, per-repo connection with short-lived access and no stored passwords. Treated as a careful contributor, never handed the keys.
Six controls ship in the smallest build and never get cut.
The embed key is a routing ID. Submissions are authorized by where they come from, plus Turnstile and rate limits — not by hiding the key.
A signed timing token and a hidden trap stop ~99% of bots for near-zero friction, with a fake-200 so they can't learn.
Every webhook call resolves, validates, and pins the IP — private, loopback, and cloud-metadata ranges are blocked. https-only, no redirects.
Sliding windows on both axes, with the real client IP verified end-to-end. Floods get shed at the edge.
Connector secrets are AES-256-GCM encrypted before anything touches a backup. Submitter IPs are hashed, never stored raw.
Every query runs through one scoped repository. Wrong owner → 404. One tenant can never see another's notes.
Start hosted in two minutes, or take the Docker image and run it on your own server with your own database. Either way it's one auto-updating widget and nothing to maintain. Generous by default — your data, your rules, no nickel-and-diming.
Free while in beta · spark → shipped