Section of the AI Wrapper App

Model Settings Section

The model configuration screen for a Lumina-style AI wrapper app. Tabbed interface covering Flux Pro, DALL-E 3, Stable Diffusion XL, and Midjourney API. Each tab has: a masked API key input with Show/Update, quality selector (Standard, High, Ultra), default steps and guidance scale sliders, a default negative prompt textarea, and style preset chips with toggle selection. Save and Reset to defaults buttons at the bottom.

Section preview

Loading preview

Vibe code this section with a prompt

Paste the prompt into your AI coding tool and it builds just this section. Each version is scoped to the Model Settings Section, part of the AI Wrapper App.

Build the Model Settings section for a Lumina AI image generation wrapper app in this repository. Design system: white background (#FFFFFF), black text, grey (#F5F5F5, #EBEBEB) surfaces, blue #2B65F6 only on the primary CTA button, sans-serif font, font-medium max weight, 12-14px body, 16-20px headings, rounded-xl / rounded-2xl cards, no all-caps text. Build: a tabbed model configuration page with tabs for Flux Pro, DALL-E 3, Stable Diffusion XL, and Midjourney API. Each tab shows: a masked password input for the API key with Show/Hide and Update buttons and a helper link to get the key; a 3-option quality selector (Standard / High / Ultra) styled as pill buttons; default steps slider (10-50) with current value label; default guidance scale slider (1-20, step 0.5) with current value label; a default negative prompt textarea pre-filled with common exclusions; a grid of style preset chips that toggle on/off (Cinematic, Photorealistic, Illustration, Watercolor, Neon, Anime, Oil painting, 3D render, Sketch). Save changes button in blue #2B65F6, Reset to defaults button as secondary.. Use Next.js 14 App Router with Tailwind CSS. No motion libraries. Run npx tsc --noEmit when done.

How to use this Model Settings Section as a prompt

  1. Paste the prompt into Claude Code, Cursor, or Lovable to add a model configuration page to your Next.js AI wrapper app covering all major image generation APIs.
  2. Best as the /models or /settings route in AI wrapper apps that support multiple providers (Replicate for Flux/SDXL, OpenAI for DALL-E) and need per-model defaults.
  3. Ask Claude Code or Cursor to wire the API key save to Supabase or to an encrypted server-side secret store, add a "Test connection" button that pings the model API, or add per-model usage stats.

How to use this Model Settings Section as code

  1. Drop the file into app/(lumina)/models/page.tsx. Config state per model includes apiKey, quality, steps, guidance, negativePrompt, and activeStyles. Save calls a POST /api/lumina/model-config server action.
  2. API keys should never be stored client-side in production: encrypt and store in Supabase or use a secrets manager. The template ships a reference implementation using Supabase.
  3. Compatible with Replicate (Flux Pro, SDXL), OpenAI (DALL-E 3), and any API-key-gated image model.

Other sections in the AI Wrapper App

More sections you can vibe code alongside the Model Settings Section. Each ships with prompts for Claude Code, Cursor, Codex, Lovable, Replit, and Google Stitch.

FAQ

How do I build a model settings page for an AI wrapper app?+

Copy the prompt into Claude Code, Cursor, Lovable, Codex, Replit, or Google Stitch. The generated file drops into app/(lumina)/models/page.tsx as a tabbed settings page per model with API key input, quality selector, sliders for steps and guidance, a negative prompt textarea, and style preset chips.

How do I securely store API keys entered in the model settings form?+

Never store raw API keys in your database. Encrypt them with a server-side secret (AES-256) before writing to Supabase, or store them directly in a secrets manager (AWS Secrets Manager, Vercel Environment Variables, Doppler). The template shows a reference using Supabase with a server action for encryption.

Can I add a test connection button to verify the API key works?+

Yes. Add a Test button next to the API key input that calls a server action: for Flux/SDXL, POST to the Replicate API with the key and check the status code; for DALL-E, call openai.models.list() and catch auth errors. Return a green tick or red error message inline.

What is a vibe coding template?+

A vibe coding template is a full-app scaffold you describe to an AI coding tool instead of writing from scratch. You paste the prompt into Cursor, Claude Code, Lovable, Codex, Replit, or Google Stitch, and the AI generates the correct file structure, routes, components, and design system automatically. The difference from a regular template is that you own the output from the first line: you can immediately ask the AI to swap the auth provider, change the brand color, or add a new route — no boilerplate editing required.

Can I use these vibe coding templates copyright-free in my project?+

Yes. Every template, section, code file, and included image is free to use in your website, app, client project, SaaS product, or open-source build with no attribution required. There is no license fee, no royalty, and no copyright restriction. The code is yours to keep, modify, and ship commercially the moment you copy it.

What do I get on each vibe coding template page?+

A live preview of the full template, the complete multi-file source code as a single copy-paste string with `// === filename ===` headers so Cursor and Claude Code split it into the correct files automatically, and the prompt that regenerates the template from scratch in any of the 6 AI coding tools. Every vibe coding template ships with the shared AI Library design system: white background, black on grey typography, brand blue reserved for primary CTAs, small type, minimal icons.

What is the difference between a vibe coding template and a component?+

A component is a single UI unit (a chat interface, a bento grid, a scroll progress bar). A vibe coding template is a full app made up of many components: routes, layout, navigation, data flow, and interactions wired together. Both are in the AI Library. Templates live at /prompts/ai-library/vibe-coding-templates. Components live at /prompts/ai-library/website-sections. Every template page cross-links to the AI Library components used inside its sections.

Are the vibe coding templates licensed for commercial use?+

Yes. Every template can be copied, adapted, sold, and shipped in commercial projects with no attribution required. This applies to the full-app parent code and every child section. The AI prompts are also unrestricted. Use them for client work, indie SaaS, agency deliverables, internal tools, and open-source projects.

What technology stack do the vibe coding templates use?+

Every template is built on Next.js 14+ App Router + Tailwind CSS v3 + Switzer font, written in TypeScript. Backend choices are yours: they work with Supabase, Clerk, or Auth.js for authentication, and with Postgres, Convex, PlanetScale, or Neon for data. Templates deploy on Vercel, Cloudflare Pages, or Netlify. No motion library required. All styling is Tailwind utility classes.

How do I use a vibe coding template with Cursor or Claude Code?+

Open the template page, click Copy full code, and paste directly into a Cursor or Claude Code chat. Both tools detect the `// === filename ===` headers and split the paste into the correct files in your project. From there you can ask them to swap the auth provider, change the color palette, wire the data to your API, or generate missing routes. The prompt tab gives you the exact vibe coding instruction to hand off instead.

Do vibe coding templates work with my auth provider and database?+

Yes. Auth is wrapped behind a `src/lib/auth.ts` helper so you can swap Supabase, Clerk, Auth.js, or your own SSO by changing one file. The same pattern applies to the database client: swap Supabase for Postgres, Convex, PlanetScale, or Neon without touching the UI. Every template ships a Supabase reference implementation by default because it is the most common choice for AI-native SaaS.

Can I combine sections from different vibe coding templates?+

Yes. Every child section is a standalone page and standalone code file. Copy the Users Table section from the SaaS Dashboard template into an AI Agent template and it works with no modification — they share the same design system, typography, spacing scale, and layout primitives. The prompt tab for each section is scoped to that section, so you can vibe code just the piece you need.

Why include a prompt if the code is already there?+

Three reasons. First, the prompt regenerates the template matched to your own design tokens, brand color, file structure, and auth provider — faster than editing someone else's code. Second, it is a starting instruction you can extend ("build this dashboard but replace analytics with a Kanban board") instead of a fixed snapshot. Third, each prompt is written specifically for the tool it targets: Claude Code, Cursor, Codex, Lovable, Replit, or Google Stitch — the output is consistent because the design constraints are identical across all six.

Which AI coding tool is best for vibe coding with these templates?+

All six produce the same visual output. Cursor and Claude Code are best for dropping the full multi-file code into an existing repo where you want the AI to manage imports, run type checks, and iterate. Lovable and Replit are best for a fresh working preview URL in seconds without local dev setup. Codex fits agent-driven vibe coding workflows where the AI works autonomously across multiple files. Google Stitch is best if you want to iterate on the design visually before dropping the React code into your project.

Can I adapt the design system to my own brand?+

Yes. The design system is Tailwind-native: change the brand color in `tailwind.config.ts` and every primary CTA updates. Change the font in `next/font` and every heading and body copy updates. Change the border-radius in the shared component variants and every card, button, and modal updates. Because the templates lean minimal (white background, black text, blue only on CTAs) they adapt easily to any brand without visual conflict.