huddlesDevelopers Blog Open Huddles
Get started

Quickstart

From nothing to a bar on your page with people in it. Ten minutes if you already have a server; two if you start with walk-ins.

  1. Get an app id and a secret

    Apps live in the developer hub, which opens by request. An app is a public id that rides the iframe URL, a secret shown exactly once, the origins allowed to frame it, and the space it opens into.

  2. Mint a token on your server

    Your user already logged in — to you. Sign a short token saying so; we never see your user database.

    js — your server, any JWT library
    import { SignJWT } from 'jose';
    
    const token = await new SignJWT({ name: user.displayName })
      .setProtectedHeader({ alg: 'HS256' })
      .setSubject(user.id)          // your id for them — any stable string
      .setIssuedAt()
      .setExpirationTime('5m')      // tokens are per page load, not per person
      .sign(new TextEncoder().encode(process.env.HUDDLES_APP_SECRET));
  3. Put two lines on your page
    html
    <script src="https://huddles.space/embed.js"></script>
    <script>
      Huddles.init({
        embedder: 'your-app-id',
        // Minted by YOUR server — see Authentication. Omit it for walk-ins.
        getToken: () => fetch('/api/huddles-token').then(r => r.text()),
      });
    </script>

    That is the install. The bar appears on the top edge; people can drag it to any corner, and position starts it somewhere else.

  4. Watch it work

    Open the page as two people. Tap a face in the island and you are talking. In development, /embed-sandbox is this exact install on a pretend course page, with a token minted server-side the way yours will be.

A course page with the Huddles bar folded on its top edge
The bar, folded, on the sandbox course page: the space, who is here, and the invitation to huddle up.

No backend yet? Omit the token: Huddles.init({ embedder }) gives every visitor an identity on the fly once your app allows walk-ins. Start there and add the token when your login exists.

Then#

huddles.space · Blog · For Mac · Premium · Terms · Privacy · © 2026 Huddles.Space