Install
Add it alongside your embed tag, or instead of it — the dashboard boots a cursor of its own, so you do not need both while you are still choosing.
<script src="https://cursor-pts9j3ezj-meetchauhanteam.vercel.app/dashboard.js?persist=1"></script>A launcher appears in the corner. Open it, pick a cursor, and the page updates as you go — you are previewing on your own content, not on a demo canvas.
Two ways to finish
Copy tag
Takes the configuration as a normal embed tag. Paste it into your template, drop the dashboard, and every visitor gets that cursor from a ~10kb file.
Use this for production.
Save for this site
Stores the choice in localStorage and re-applies it on the next load. It follows the browser, not the site, so it is per-person.
Use this while deciding.
That distinction matters and the panel says so in its own footer: saving is not publishing. If you want everyone to see the cursor, the tag is the only thing that does it.
Options
| Parameter | Values | Meaning |
|---|---|---|
persist | 0 | 1 | Store the choice in the browser and re-apply it next load. |
position | corner | bottom-right (default), bottom-left, top-right, top-left. |
panel | hidden | Hide the launcher and open it yourself from your own UI. |
accent | hex | Accent colour for the panel chrome, without the leading #. |
origin | url | Origin used in the copyable tag. Defaults to where the script came from. |
Open it from your own UI
With panel=hidden the launcher never renders and you control the panel yourself — an item in your admin menu, a keyboard shortcut, whatever fits.
<script src="https://cursor-pts9j3ezj-meetchauhanteam.vercel.app/dashboard.js?panel=hidden"></script>
<button onclick="CursorKit.dashboard.open()">Cursor settings</button>What it will not do
- It is not smallThe dashboard carries the whole library, because switching styles at runtime is its entire job. Do not ship it to visitors — ship the tag it produces.
- It will not restyle your pageThe panel renders in a shadow root with its own reset, so your CSS cannot reach it and it cannot reach your CSS.
- It keeps its own cursor nativeThe panel is marked data-cursor="native". Choosing a cursor is harder when the tool is wearing it.