# Getting started

Luuphub turns a single `<script>` snippet into a feedback widget, a hosted
portal, and an AI-triaged inbox. This page mirrors the in-app onboarding checklist
so you can follow it start to finish and land your first triaged item in minutes.

## 1. Create your workspace

Signing up seeds a **sample workspace** — a board, a few example posts, and a
changelog entry — so every screen has something in it before your real feedback
arrives. Sample content is marked internally and is **excluded from AI quota,
digests, and your public portal** until you claim the site, so exploring it costs
nothing.

## 2. Create your first site

A *site* is one product's feedback space: its own board, portal, branding, and
publishable key. Name it and pick its portal slug. You can run many sites from one
dashboard.

## 3. Choose an install variant

The install screen offers three snippet variants:

- **Launcher** — a floating button the widget injects (fastest path, zero markup).
- **Custom trigger** — you call `luuphub('open')` from your own button.
- **Manual** — mount into a specific element you control.

## 4. Install the snippet

Paste the snippet just before `</head>`. It is a ~300-byte async queue stub: calls
made before the widget finishes loading are queued and replayed, so nothing is lost
on a cold load. Full details on the [Widget install & API](/developers/docs/widget) page.

## 5. Auto-verify the install

Once the snippet loads on your site, onboarding **auto-detects** it — no "click to
verify" dance. If detection stalls, the checklist shows exactly what it is waiting
for (the loader request, then a config fetch).

## 6. Send a test submission

Onboarding prompts you to open the widget and submit one real piece of feedback.
This exercises the full path: capture → ingest → AI triage.

## 7. Watch it get triaged

Your test item lands in the inbox already **categorized, titled, and deduped** by
AI. That is the loop — from asked to shipped — you will run every day.

## Next steps

- [Widget install & API](/developers/docs/widget) — the JS commands and install variants.
- [Identify & SSO](/developers/docs/identify) — attach signed user identity to submissions.
- [Theming contract](/developers/docs/theming) — brand the widget and portal.
- [REST API](/developers/docs/api) · [Webhooks](/developers/docs/webhooks) · [MCP server](/developers/docs/mcp) — automate everything above.

Dogfooding note: we run Luuphub on Luuphub. Watch what we ship on our
own [public board](https://feedback.luuphub.com), [roadmap](https://feedback.luuphub.com/roadmap), and
[changelog](https://feedback.luuphub.com/changelog).
