{"$schema":"https://soulcraft.com/schemas/kit/v2.json","id":"app-builder","type":"soulcraft","role":"primary","status":"released","name":"App Builder","description":"Describe any app — Muse designs it, builds it, and launches it live on Venue","longDescription":"The fastest way from idea to a live, scalable application. Talk to Muse about what you want to build: it designs the data model, creates the screens, wires the logic, and verifies everything works — while you watch the app run live beside the conversation. One button launches it on Venue with auth, payments, AI, and analytics already wired. Built on the platform stack: TypeScript, Svelte 5, the Soulcraft SDK, and Brainy.","version":"1.1.3","author":{"name":"Soulcraft Labs","email":"kits@soulcraft.com","url":"https://soulcraft.com"},"icon":"🚀","tags":["app","builder","svelte","startup","no-code","ai"],"variables":[{"key":"appIdea","label":"What's the idea? (one sentence is plenty)","type":"string","required":false,"example":"A daycare app where dog owners book visits"}],"shared":{"industry":"software-development","category":"development","aiExpertise":["Svelte 5 runes and component architecture","Brainy data modeling with subtypes","AppRuntimeContext platform services","Conversational product discovery"],"suggestions":[{"label":"Describe your app idea","prompt":"I want to build an app. Interview me about the idea — who it's for and what it should do on day one — then set up the data model and first screens, and show me the running app."},{"label":"Add a screen","prompt":"Add a new screen to my app. Ask me what it should show, then create it, register it in the navigation, and update the app spec."},{"label":"Add a data model","prompt":"My app needs to store a new kind of thing. Ask me what it is and what fields matter, then add the typed model, wire it to Brainy, and seed a couple of sample records."},{"label":"Run & check my app","prompt":"Run my app, verify it builds clean with no type errors, and tell me honestly what state it's in — what works, what's still planned, and what you'd do next."},{"label":"Make it beautiful","prompt":"Review my app's screens visually and improve the design — spacing, hierarchy, empty states, and polish — using the kit's UI components and theme tokens."},{"label":"Get ready to launch","prompt":"Check whether my app is ready to launch on Venue: run the full verification, review the app spec for unfinished screens, and walk me through anything that needs finishing first."}],"dataModel":{"entities":[{"domain":"screen","type":"Concept","description":"A screen in the app being built"},{"domain":"model","type":"Concept","description":"A data model the app stores"}],"relationships":[{"from":"screen","to":"model","verb":"Uses","description":"A screen renders records of this model"}]}},"workshop":{"difficulty":"beginner","templateTier":4,"aiPersona":{"role":"a senior product engineer pairing with a founder to build their app. You do the engineering — they bring the vision. You speak in outcomes ('your booking screen now saves visits'), never in stack traces. You build in small visible steps so the running preview changes within seconds of every decision.","expertise":["Svelte 5 runes (single-component apps with a hash screen router)","Brainy data modeling (entities, subtypes, relations)","AppRuntimeContext platform services (data, AI, auth, notify, payments)","Conversational product discovery and iterative delivery"],"tone":"collaborator"},"workspaceConfig":{"paradigm":"creative","defaultTab":"app","defaultView":"app","layout":{"leftDock":"files","rightDock":"ai"},"onboarding":{"showGuide":true,"highlightFeatures":["app"],"suggestedActions":["Describe your app idea","Run & check my app"]}},"graphGuidance":{"conceptCreation":{"typeMapping":{"screen":"concept","model":"concept","feature":"concept"}},"rules":["Track each app screen and data model as a concept so progress is visible in explore views","App user-data entities use the subtypes declared in src/lib/data/models.ts"]},"qualityGates":{"fileChecks":[{"path":"src/App.svelte","required":["$props"]},{"path":"app-spec.json","required":["screens"]},{"path":"package.json","required":["svelte"]}],"projectChecks":["App builds clean (vite build) with no TypeScript errors (svelte-check)","Every screen in app-spec.json has status built or verified","App runs in the preview with no console errors"],"exportReady":["check_app reports builds clean + 0 type errors","All app-spec screens verified","App.svelte never imports SvelteKit or src/dev/"]},"templateMetadata":{"runnable":true,"runnableCommand":"npm run dev"},"publishConfig":{"contentType":"app","publishable":true,"appEntry":"src/App.svelte","permissions":[],"configSchema":{"appTitle":{"type":"text","label":"App title","default":"{{projectName}}"},"welcomeMessage":{"type":"text","label":"Welcome message","default":"Welcome!"}}}},"venue":{"experienceTypes":[],"features":{"apps":true,"website":false,"analytics":true}},"previewImageUrl":"kits/app-builder/images/preview.webp","primaryProduct":"workshop"}