🍬 DaisyKit — Quick-Start Cheat Sheet

Live truth > this page. Host: /dev/daisykit · Code: $lib/daisykit/* · Fork: kits/daisy-midway/

What: portable daisyUI Midway building blocks (juice · bones · booths · dopamine)
Who: humans + agents shipping theme-aware UI toys without touching Funday Nakama
When: before inventing a new micro-game / HUD / form loop from scratch


⚡ 30-second map

🎯PathJob
🖥️ Host/dev/daisykitAccordion showcase · inherits Funday theme · MockNakama only
📦 Libfrontend/src/lib/daisykit/Import into features like a game plugin
🧰 Forkkits/daisy-midway/Standalone SvelteKit carnival
📜 Zip/dev/daisykit/daisymidwaystarterkit.zipOffline starter
Funday theme + /dev chrome
        │
        ▼
   /dev/daisykit  ──imports──►  $lib/daisykit/{juice,bones,arcade,dopamine,booths,backend}
        │                              │
        │                              └── MockNakama only (never platform Nakama)
        └── Folded row = auto mini-demo · click = full booth

🧱 Import recipes (copy-paste)

import { JuiceLab, DiceAlley, ToggleHeist } from '$lib/daisykit/booths';
import { rig, burst } from '$lib/daisykit/juice';
import { rollDice } from '$lib/daisykit/bones/dice';
import { getEngine } from '$lib/daisykit/dopamine/engine.svelte';
📂 ModuleUse for
booths/*Ready playable surfaces (Juice Lab → Arcade → Blueprint demos)
juice/*Motions · FX · particle bursts
bones/*Pure math: dice · cards · turns · sheets · grids
arcade/*HUD atoms (HP, mana, hotbar, minimap…)
dopamine/*Tickets · streak/heat · pity · toasts · honest payouts
backend/*MockNakama playground API (reference nakama.ts exists — do not wire live Funday client from kit host)

🕹️ Live booth roster

Core (full mounts)

#BoothController vibe
1Juice LabMotions / FX toolbox
2Rating Riotrating memory duel
3Range Anglerrange sweet-spot hold
4Dice AlleyHonest EV dice
5House of CardsCarny 21
6Arcade Hall26 HUD atoms · one sim
7Ticket BoothIdle meta

Blueprint — playable demos

BoothdaisyUI spine
Toggle Heisttoggle
Modal Moledialog.modal
Skeleton Saysskeleton
Radial Rouletteradial-progress
Steps Sprintsteps

Remaining Blueprint cards = idea recipes (not mounts). Build next; don’t fake “live”.


🧠 Dopamine engine (the law)

const engine = getEngine();
engine.win();                 // streak / heat up
engine.lose(margin?);         // reset; optional near-miss toast
await engine.finishRun(id, score); // tickets + score submit
engine.toast('success', '…');
✅ Do🚫 Don’t
Pay out only via finishRun / engine helpersInvent parallel wallet math
Print odds on the wall when they existHide probabilities
Semantic daisyUI colors onlyHardcoded Tailwind palette / kit theme picker
Import $lib/daisykit/* into your featurePollute app.css with Midway themes
Use MockNakama on the kit hostTouch Funday platform Nakama from daisykit

🧪 Booth recipe (5 steps)

  1. Pick the controller — one daisyUI component is the toy
  2. Loop in runes$state / $derived · native onclick (no on:click)
  3. Steal bones$lib/daisykit/bones/* for math you already proved
  4. Pay honestengine.finishRun(boothId, score) only
  5. Show the math — if a probability exists, render it

🧼 Host hygiene (surgical plug-in)

RuleWhy
Thin route: routes/dev/daisykit/{+layout,+page} onlyKit stays portable
Inherit Funday data-themeNo second theme picker
Lucide > emojiClean /dev language
Folded = auto demo · open = full mount0-click scan, 1-click play
No nested card-in-card chromeUncluttered Midway

Ask Docs

AI assistant to help answer questions about the documentation. Answers are read-only and cite docs/source.

Hi! How can I help you with the documentation today? Answers are read-only and cite docs/source.

Ctrl+Enter to send