# Quickstart

Put a form on a page in a few minutes: create it, allow your site, paste two lines, send a test answer.

This page puts a form on a web page and sends a first test answer. You need a OneStar account on Pro or Max and a page you can edit.

## 1. Create the form

In OneStar, open **Feedback** and choose **New form**. Pick the product it is about, then a starting point: a quick reaction, NPS, a poll or a survey. Change the questions in **Build**, then **Publish**. Until you publish, nothing can answer it.

Each form has a public id that starts with `f_`, for example `f_hemsz66yupbd76d2`. It is on the form's **Install** tab.

## 2. Allow your site

A form answers only on the sites you allow. On **Install**, under **Allowed sites**, add the origin of the page you will paste the snippet on: the scheme, host and port, with no path, such as `https://example.com`.

To try it on your own machine first, add `http://localhost:3000` (with your port). Answers from `localhost` and `127.0.0.1` are always test answers: the form shows a Test ribbon, and they never count in results or your monthly answers. See [Testing](https://onestar.sh/docs/feedback/testing.md).

> A page on a site that is not allowed hides the form and fires `onestar:error` with the code `origin_refused`. OneStar lists that site on the Install tab, where one click adds it.

## 3. Paste two lines

```html index.html
<script src="https://embed.onestar.sh/v1/loader.js" async></script>
<onestar-feedback form="f_hemsz66yupbd76d2"></onestar-feedback>
```

Use your own form id. The loader is about 3 KB gzipped and loads the rest of the widget only when the form comes near the screen. For React, Next.js, Vue, Svelte or Astro, see [Frameworks](https://onestar.sh/docs/feedback/frameworks.md).

If your page sends a Content Security Policy, allow these two hosts:

```text CSP
script-src https://embed.onestar.sh
connect-src https://api.onestar.sh
```

## 4. Send a test answer

Open the page and answer the form. On the form's **Install** tab, the **Test answers** card shows how many test answers arrived this week and when the latest came, with a list you can open. Test answers are removed after a week.

## 5. Go live

Open the page on an allowed site that is not `localhost`. Answers from it count: they show in **Results** within a minute, with each share and its range, completion per question, who answered and where the form ran.

## What to do next

- Pick a mode: a [popover, slide-in or modal](https://onestar.sh/docs/feedback/modes-and-triggers.md), opened by your own button or by a timer, scroll depth or exit intent.
- Tell OneStar the [app version, plan and placement](https://onestar.sh/docs/feedback/context-and-placements.md), so Results can split answers by them and show how many people who saw the form answered it.
- [Sign in your users](https://onestar.sh/docs/feedback/identify-users.md), so answers carry a verified user and you can limit a form to them.
- Share the form's own page by link or QR code from its **Share** tab, with no code at all.
