Back to all guides

Prompting for App Functionality

15 min readJanuary 8, 2026By Spawned Team

How to describe features, user flows, and business logic to AI builders effectively.

Prompting for Functionality

Describing what your app should DO is as important as how it should LOOK. Here's how to communicate functionality to AI.

Describing Features

Feature Format

"[Action] that allows [user] to [goal] by [method]."

Examples

Vague: "Add search" Better: "Add a search feature that allows users to search products by name, description, or category. Show results in real-time as they type, with product cards including image, name, and price."

Vague: "Add login" Better: "Add authentication using Supabase Auth with Google sign-in and email/password options. After login, redirect to the dashboard. Show user's avatar in the navigation."

User Flow Descriptions

Sequential Steps

"When a user signs up:

  1. They enter email and password
  2. They receive a verification email
  3. After clicking the link, they're taken to onboarding
  4. Onboarding asks for name and company
  5. After completing, they see the dashboard"

Conditional Logic

"On the pricing page:

  • If user is logged out: Show 'Start Free Trial' button
  • If user is on free plan: Show 'Upgrade' button with current plan highlighted
  • If user is on paid plan: Show 'Manage Subscription' button"

Data & State Descriptions

Data Structure

"Each project has: name (string), description (text), status (draft/published/archived), created_at (timestamp), and owner_id (user reference)."

Relationships

"Users can have multiple projects. Projects can have multiple tasks. Tasks belong to one project and one user (assignee)."

State Management

"The cart persists across page refreshes using local storage. Clear cart after successful checkout."

Form Functionality

Form Fields

"Contact form with: name (required, text), email (required, valid email), company (optional, text), message (required, textarea min 50 characters)."

Validation

"Show inline validation errors below each field. Disable submit button until form is valid. Show success message after submission."

Actions

"On submit, send data to API endpoint. Show loading state on button. On success, clear form and show thank you message. On error, show error message."

Integration Descriptions

Database

"Store form submissions in Supabase 'contacts' table. Send email notification to admin@company.com using Resend when new submission is received."

External APIs

"Fetch product data from our API at /api/products. Handle loading and error states. Cache results for 5 minutes."

Authentication

"Protect the /dashboard and /settings routes. Redirect unauthenticated users to /login. After login, return them to their intended destination."

Common Functionality Prompts

CRUD Operations

"Allow users to:

  • Create new [items] with [fields]
  • View a list of their [items] with filtering by [criteria]
  • Edit existing [items] inline or in a modal
  • Delete [items] with confirmation dialog"

Search & Filter

"Add search that filters [items] by [field]. Include dropdown filters for [category], [date range], and [status]. Show 'No results' state when nothing matches."

Pagination

"Display [items] in pages of 10. Show page numbers, previous/next buttons, and total count. Remember page when navigating away and back."

Notifications

"Show toast notifications for:

  • Success: green, auto-dismiss in 3 seconds
  • Error: red, requires manual dismiss
  • Info: blue, auto-dismiss in 5 seconds"

Example Full Functionality Prompt

"Build a task management app with:

Tasks

  • Create tasks with title, description, due date, and priority (low/medium/high)
  • View tasks in a list with sorting by due date or priority
  • Inline edit task title, click to open modal for full editing
  • Mark tasks complete with checkbox, completed tasks show strikethrough
  • Delete with confirmation

Organization

  • Tasks belong to projects
  • Users can create/edit/delete projects
  • Filter tasks by project using sidebar
  • Search tasks by title across all projects

Data

  • Store in Supabase
  • User authentication with Google
  • Each user sees only their own tasks and projects"

Key Takeaways

  1. Describe the user action and expected result
  2. Include data structure and relationships
  3. Specify validation and error handling
  4. Mention integrations explicitly
  5. Be thorough—AI can't assume what you want

Ready to build?

Start creating with Spawned and bring your ideas to life.

Start Building