AI Prompts Library

Copy-paste prompts for Claude Code, Cursor, and other AI assistants.

These prompts are designed to help you build KidsBuild apps faster with AI assistance. Each prompt includes context about our SDK, conventions, and best practices so the AI generates compatible code.

How to Use

  1. Find a prompt that matches what you want to build
  2. Click the copy button to copy it to your clipboard
  3. Paste it into Claude Code, Cursor, or your AI assistant
  4. Replace the bracketed placeholders with your specific details
  5. Let the AI generate the code, then review and customize

Scaffold a New Game

Scaffolding

Creates a complete game structure with score tracking, levels, and game over states.

I'm building a KidsBuild app game. Create a complete game structure with:
- A main game component in src/App.tsx
- Score tracking using useAppState from @kidsbuild/sdk
- Game states: menu, playing, game-over
- A simple game loop using requestAnimationFrame or setInterval
- Responsive UI with Tailwind CSS
- A restart button on game over

The game should be [DESCRIBE YOUR GAME HERE - e.g., "a snake game", "a memory matching game", "a typing speed test"].

Use these imports:
import { KidsBuild, useUser, useAppState, useWallet } from '@kidsbuild/sdk'

Make sure the game saves high scores per user.

Scaffold a Productivity Tool

Scaffolding

Creates a tool app structure with data persistence and user settings.

I'm building a KidsBuild productivity tool. Create a complete app structure with:
- Main component in src/App.tsx
- User data persistence using useAppState from @kidsbuild/sdk
- A clean, minimal UI with Tailwind CSS
- Dark mode support (the platform is dark by default)
- Settings panel for user preferences
- Export/import functionality if relevant

The tool should be [DESCRIBE YOUR TOOL HERE - e.g., "a note-taking app", "a habit tracker", "a flashcard study app"].

Use these imports:
import { KidsBuild, useUser, useAppState, useWallet } from '@kidsbuild/sdk'

Basic State Management

State & Data

Shows how to use useAppState for simple data persistence.

I need help with KidsBuild state management. Show me how to:

1. Use useAppState to save and load a single value:
   const [score, setScore] = useAppState('score', 0)

2. Use useAppState to save and load an object:
   const [settings, setSettings] = useAppState('settings', { sound: true, difficulty: 'normal' })

3. Use useAppState to save and load an array:
   const [items, setItems] = useAppState('items', [])

Include TypeScript types and show how to properly update nested state.

Import from: import { useAppState } from '@kidsbuild/sdk'

Complex State Patterns

State & Data

Advanced patterns for managing game state, undo/redo, and state migrations.

I need help with advanced KidsBuild state patterns. Show me:

1. How to implement undo/redo with useAppState
2. How to migrate state when my data schema changes
3. How to handle loading states and errors
4. How to sync state between multiple components
5. How to batch multiple state updates

Use TypeScript and include proper error handling.

Import from: import { useAppState, useAppStateAsync } from '@kidsbuild/sdk'

Game HUD Component

UI Components

Creates a responsive heads-up display for games with score, lives, and level.

Create a KidsBuild game HUD (heads-up display) component with:
- Score display with animated number changes
- Lives/hearts display
- Level indicator
- Timer (if applicable)
- Pause button
- Mobile-responsive layout (works on phones)
- Tailwind CSS styling matching dark theme

The HUD should be fixed at the top of the screen and not interfere with gameplay.

Props should include: score, lives, level, time, isPaused, onPause

Make it a reusable component I can import into any game.

Leaderboard Component

UI Components

Creates a leaderboard that displays top scores from all players.

Create a KidsBuild leaderboard component that:
- Fetches top scores from the KidsBuild API
- Shows rank, player name, and score
- Highlights the current user's position
- Has loading and empty states
- Supports pagination or infinite scroll
- Mobile-responsive with Tailwind CSS

Use these imports:
import { useLeaderboard, useUser } from '@kidsbuild/sdk'

The component should refresh automatically when new scores are submitted.

Pre-Publish Checklist

Publishing

Walks through everything needed before publishing your app.

I'm ready to publish my KidsBuild app. Help me create a pre-publish checklist:

1. Code Quality
   - No console.log statements left in
   - No hardcoded test data
   - Proper error handling
   - TypeScript errors resolved

2. App Metadata
   - app.json has title, description, category
   - Icon is 512x512 PNG
   - Screenshots are 1280x720 or 720x1280

3. User Experience
   - Works on mobile (320px width minimum)
   - Loading states for async operations
   - Graceful error messages
   - Accessible (keyboard navigation, screen readers)

4. Testing
   - Tested with fresh user (no saved state)
   - Tested with saved state from previous session
   - Tested offline behavior

Walk me through each item and help me fix any issues.

Generate App Metadata

Publishing

Creates the app.json file with proper metadata for marketplace listing.

Help me create the app.json metadata file for my KidsBuild app.

My app is: [DESCRIBE YOUR APP]

Generate a complete app.json with:
- name (lowercase, no spaces, like "my-awesome-game")
- title (display name with proper capitalization)
- description (2-3 sentences for marketplace listing)
- category (one of: game, tool, creative, social, education)
- tags (array of relevant keywords)
- ageRating ("everyone", "teen")
- pricing: { type: "free" } or { type: "paid", buildBucks: number }
- icon: "./assets/icon.png"
- screenshots: ["./assets/screenshot-1.png", ...]

Also suggest what my icon and screenshots should show.

Design Database Schema

Database

Creates a declarative schema for your app's data tables.

Help me design a KidsBuild database schema for my app.

My app needs to store: [DESCRIBE YOUR DATA NEEDS]

Create a schema.json file with:
- Table definitions using the declarative format
- Proper column types (text, integer, boolean, json, timestamp)
- Indexes for frequently queried columns
- The appId column (required, auto-added by platform)

Example format:
{
  "tables": {
    "high_scores": {
      "columns": {
        "score": { "type": "integer", "nullable": false },
        "level": { "type": "integer", "default": 1 },
        "achieved_at": { "type": "timestamp", "default": "now()" }
      },
      "indexes": ["score"]
    }
  }
}

Remember: KidsBuild uses protected tables, so I can't write raw SQL. I define the schema declaratively and the platform handles migrations.

Schema Migration

Database

Shows how to safely update your database schema.

I need to update my KidsBuild app's database schema. My current schema has:
[DESCRIBE CURRENT SCHEMA]

I need to add/change:
[DESCRIBE CHANGES]

Help me:
1. Create a new schema version in schema.json
2. Understand what migrations the platform will auto-generate
3. Handle any data that needs to be transformed
4. Test the migration locally before publishing

Remember: I can't write raw SQL on KidsBuild. Schema changes are declarative and the platform handles the actual migration safely.

Debug State Issues

Debugging

Helps troubleshoot state not saving or loading correctly.

I'm having issues with state in my KidsBuild app. Help me debug:

Symptoms: [DESCRIBE THE PROBLEM - e.g., "state resets on refresh", "state not updating UI", "wrong initial value"]

My current code:
[PASTE YOUR useAppState CODE]

Check for these common issues:
1. Is the key string unique and consistent?
2. Is the initial value the correct type?
3. Am I mutating state directly instead of using setter?
4. Is the component wrapped in <KidsBuild>?
5. Am I awaiting async operations properly?

Add console.log statements to trace the issue and suggest fixes.

Debug API Errors

Debugging

Helps troubleshoot API calls failing or returning errors.

I'm getting API errors in my KidsBuild app. Help me debug:

Error message: [PASTE ERROR]
API endpoint: [WHICH ENDPOINT]
Request data: [WHAT YOU'RE SENDING]

Check for:
1. Authentication - is the user logged in?
2. Permissions - does the app have access to this API?
3. Rate limiting - are you making too many requests?
4. Data validation - is the request body correct?
5. Network issues - is the request reaching the server?

Show me how to add proper error handling and retry logic.

Custom Prompts

Need something specific? Start with this base prompt and customize:

Base KidsBuild Prompttext
I'm building a KidsBuild app. Here's what you need to know:

Platform: KidsBuild (kidsbuild.com)
SDK: @kidsbuild/sdk
Framework: React with TypeScript
Styling: Tailwind CSS
Theme: Dark mode by default

Key imports:
import { KidsBuild, useUser, useAppState, useWallet } from '@kidsbuild/sdk'

Important patterns:
- Wrap app in <KidsBuild> component
- Use useAppState('key', defaultValue) for persistent data
- useUser() returns current user info or null
- useWallet() returns { buildBucks, tutorBucks }
- All apps run in a sandbox with restricted APIs

My app idea:
[DESCRIBE YOUR APP HERE]

Please help me build this with clean, typed code.

Contributing Prompts

Have a prompt that works well? Share it with the community! Open a pull request on our GitHub repo or post it in the KidsBuild Discord.