In-app feedback capture
Bug reports that show, not tell.
Sighting is a drop-in SDK that lets people report an issue from inside your app — a selected region, captured as a screenshot or a recording, with the technical context already attached.
Screenshots and screen recordings · Context attached automatically · Any framework
How it works
Four steps, none of which are “write a repro”.
- 01
Open it from your app
Call sighting.open(), or wire it to a button, a keyboard shortcut, or your existing help menu.
- 02
Drag over what's wrong
An overlay lets the reporter select a region — the broken chart, not the whole page.
- 03
Screenshot or record
While recording, the overlay stops blocking input so they can reproduce the issue. Stop and cancel stay visible.
- 04
Send it
A compact popup shows the capture and an optional note. Submit lands the report in your console and your tracker.
What you get
Built to sit inside someone else’s application.
Region-accurate capture
The reporter picks the rectangle. Sighting's own controls stay out of the output.
Record while you work
Video capture leaves the app interactive, so a reproduction is a recording, not a paragraph.
Context comes along
Page URL, browser, OS, viewport, and timestamp are attached automatically — no more “what browser?”.
Framework-independent
TypeScript with a plain, framework-agnostic interface. React, Vue, Svelte, or no framework at all.
Leaves your app alone
Isolated UI, no global style bleed, and every overlay, listener, and media stream is cleaned up on close.
Private by default
Media lands in private storage behind authorized access. Reports are isolated per project.
Install
One package, one project ID.
The project ID is public by design — everything privileged stays on the server. Create a project in the console, drop the snippet in, and point the trigger at whatever UI you already have.
Ships as ESM with TypeScript declarations. Safe to import in server-rendered apps.
import { sighting } from "@sighting/browser";
sighting.init({ projectId: "proj_1a2b3c" });
// Open from your own button, shortcut, or help menu
sighting.open();We’re onboarding pilot teams now.
Tell us what you’re building and we’ll get you set up with a project and the SDK.
Request access