convex-component-authoring

Package self-contained Convex components with schemas, queries, and mutations.

1|1|Updated Feb 7, 2026
One-click install
npx skills add https://github.com/mauricioacp/tanstack-convex-better-auth-template --skill convex-component-authoring-mauricioacp
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: convex-component-authoring
Source: https://github.com/mauricioacp/tanstack-convex-better-auth-template/tree/main/.agents/skills/convex-component-authoring
Command: npx skills add https://github.com/mauricioacp/tanstack-convex-better-auth-template --skill convex-component-authoring-mauricioacp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Convex Component Authoring provides a blueprint for building self-contained Convex components that bundle schema, queries, mutations, and optional frontend hooks, enabling clean isolation and reuse across projects.

Core Features & Use Cases

  • Self-contained components including their own tables, functions, and types to keep them decoupled from the main app.
  • Clear exports and configuration for seamless consumption in other Convex apps.
  • Real-world scenario: publish a reusable "customer" component with list, get, create, update, and delete operations that multiple apps can share.

Quick Start

Create a new component package, implement its schema and functions, and wire it into your app with convex.config.ts.

Frequently Asked Questions about convex-component-authoring

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

FAQPage Schema
How do I package reusable Convex components for multiple projects?

Package reusable Convex components by bundling self-contained data schemas, queries, and mutations into a structured package with a convex.config.ts file. This approach enables type-safe sharing across apps without cross-table coupling.

What is a self-contained Convex component?

A self-contained Convex component bundles its own tables, functions, and types to keep them decoupled from the main application. This isolation enables clean reuse and easy publishing across multiple Convex projects.

How do I isolate Convex database tables from my main app?

Isolate Convex database tables by authoring a modular component that defines its own schema and mutations internally. This prevents cross-table coupling and allows the component to function independently across different applications.

Do I need a convex.config.ts file to share Convex functions?

Yes, a convex.config.ts file is required to wire a self-contained component into your app. This configuration file defines the component exports and setup needed for seamless consumption in other Convex apps.

Can I share TypeScript types and mutations across different Convex apps?

Yes, you can share TypeScript types and mutations by authoring a modular component with clearly defined exports. This provides type-safety and allows multiple apps to consume the same queries and mutations safely.

When should I build a modular Convex component instead of app-level functions?

Build a modular Convex component when you need multi-project scenarios requiring isolation, type-safety, and easy publishing. It keeps data schemas and functions decoupled from the main app to prevent cross-table coupling.