# Quickstart Get a live, public Cherry chat embed running on your site in about five minutes, no backend required. This uses **wallet-only** auth, where visitors connect their own Solana wallet to chat in a public room. > **Tip:** Want to see it first? Try the [live embed builder](https://cherry.fun/chat-embed-example/), a no-signup demo where you can theme the widget in real time and copy a ready-to-paste integration snippet. ## 1. Sign in with your wallet Cherry signs you in with your Solana wallet, so there's no email or password to set up. 1. Open the [portal](https://portal.cherry.fun/login) and click **Connect Wallet**. 2. Choose your Solana wallet, then approve the signature request. This is Sign In With Solana (SIWS): the signature proves you own the wallet and starts your session. Nothing goes onchain and there's no gas. 3. You land on your dashboard, signed in. ## 2. Create a project A project holds your embeds, bots, and API keys, so you need one before you can create an embed. 1. On the [dashboard](https://portal.cherry.fun/dashboard), click **Create Project**. On your first visit the empty state offers the same button. 2. Enter a **Name**. That's the only required field; description, notification email, and teammate invites are optional and editable later. 3. Click **Create Project**. Cherry opens the new project, where **Chat embeds** live. ## 3. Create an embed In your project, open **Chat embeds** → **New embed**. Then: 1. Copy the **embed ID** (your `appId`). 2. Under **Allowed origins**, add the origin you'll embed from (e.g. `http://localhost:3000` for local dev, and your production URL). 3. Make sure the embed is **enabled**. > **Warning:** An embed only loads on origins you've allow-listed, and only while it's enabled, otherwise it returns `401`. Add your dev and production origins before testing. ## 4. Install the SDK ```bash npm install @cherrydotfun/chat-embed-sdk ``` ## 5. Mount the widget Point the embed at a public room and mount it onto a container element: ```ts import { CherryEmbed } from '@cherrydotfun/chat-embed-sdk'; const chat = new CherryEmbed({ appId: 'YOUR_EMBED_ID', container: '#cherry-chat', roomId: 'YOUR_ROOM_ID', mode: 'single', theme: { mode: 'dark', primaryColor: '#FF5BA8' }, }); await chat.mount(); ``` ```html
``` That's it: a themed chat room, live on your page. ## No build step? Use a script tag For a plain HTML site, load the SDK from npm via jsDelivr. The bundle exposes `window.CherryEmbedSDK`: ```html
``` ## Next steps - **Authenticate your own users** (tie chat identity to your users' wallets via your backend) → [Chat Embed SDK › Authentication](https://portal.cherry.fun/docs/embed/authentication.md) - **Theme it to your brand:** presets and the full theme reference → [Chat Embed SDK › Theming](https://portal.cherry.fun/docs/embed/theming.md) - **Create rooms from your backend** and surface them in the embed → [Cherry API › Create rooms & attach to embeds](https://portal.cherry.fun/docs/api/rooms.md)