convex-create-component

Scaffold Convex components with isolated tables and app-facing wrappers.

1|1|Updated Apr 13, 2026
One-click install
npx skills add https://github.com/liminal-ai/liminal-build --skill convex-create-component-liminal-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: convex-create-component
Source: https://github.com/liminal-ai/liminal-build/tree/main/.agents/skills/convex-create-component
Command: npx skills add https://github.com/liminal-ai/liminal-build --skill convex-create-component-liminal-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Designs and builds Convex components with isolated tables, clear boundaries, and app-facing wrappers, enabling modular backend logic and reusable components across apps.

Core Features & Use Cases

  • Scaffold a local component with its own convex.config.ts, schema.ts, and lib.ts.
  • Enforce boundary discipline with isolated tables and a public app-facing API wrapper.
  • Provide wiring guidance to integrate the component into an app via app.use(...) and codegen workflows for iterative development.
  • Facilitate reuse across projects by packaging or sharing components when appropriate.

Quick Start

Scaffold a new local Convex component with convex.config.ts, schema.ts, and lib.ts, wire it into your app with app.use(...), and run the development server to generate the component-bound code.

Frequently Asked Questions about convex-create-component

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a reusable Convex component with isolated tables?

A reusable Convex component requires a convex.config.ts file, a schema.ts defining isolated tables, and a lib.ts library of component functions. You then wire it into your app using app.use(...) alongside standard codegen workflows for iterative development.

What is the best way to extract backend logic into a standalone Convex component?

The best way to extract backend logic into a standalone Convex component is to scaffold a local component with isolated tables and clear boundaries, define a public app-facing API wrapper, and integrate it via app.use(...) to maintain separation from your main application logic.

How does app.use(...) work when wiring a Convex component into an application?

The app.use(...) method integrates a scaffolded Convex component into your application by connecting its isolated tables and public app-facing API wrappers, enabling the development server to generate component-bound code for iterative development.

When do I need to define isolated tables in a Convex component schema?

You need to define isolated tables in a Convex component schema when building a new component within an app or packaging components for reuse across projects, as this enforces boundary discipline and prevents data conflicts between the component and the main application.

Can I package and share Convex components for reuse across multiple projects?

Yes, you can package and share Convex components for reuse across projects by defining them with a convex.config.ts, an isolated schema, and a library of component functions, ensuring clear boundaries and app-facing wrappers are maintained during distribution.

What are the limitations of using isolated tables in Convex components?

Isolated tables in Convex components enforce strict boundary discipline by preventing direct access from the main application, meaning all data interactions must route through the component's generated server and public app-facing API wrappers rather than direct table queries.