convex-component-authoring

Create isolated Convex component packages with schemas, functions, and npm publishing structure.

Updated May 4, 2024
One-click install
npx skills add https://github.com/kcrlee/dots --skill convex-component-authoring-kcrlee
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: convex-component-authoring
Source: https://github.com/kcrlee/dots/tree/main/claude/.claude/skills/convex-component-authoring
Command: npx skills add https://github.com/kcrlee/dots --skill convex-component-authoring-kcrlee

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you design, structure, and publish self-contained Convex components that can be reused across projects without leaking schema, functions, or configuration into the host app.

Core Features & Use Cases

  • Component Isolation: Define component-specific tables, validators, and server functions that stay separate from the main application.
  • Reusable Exports: Organize clean entry points, hooks, and typed APIs so consumers can integrate the component easily.
  • Publishing Workflow: Prepare package metadata, build configuration, and versioning practices for distribution through npm.
  • Use Case: Build a rate limiter, shared content module, or other packaged backend feature that can be mounted multiple times in different Convex apps.

Quick Start

Ask the Skill to scaffold a Convex component with isolated schema, typed functions, and publish-ready package structure.

Frequently Asked Questions about convex-component-authoring

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

FAQPage Schema
How do I create reusable Convex components for npm publishing?

To create reusable Convex components for npm publishing, you scaffold an isolated package containing component-specific schemas, typed query and mutation exports, and semantic versioning conventions. This structure keeps backend features separate from the host application.

How do I isolate Convex table schemas when building a shared backend component?

Isolating Convex table schemas involves defining component-specific validators and tables that remain separate from the main application database. This ensures the shared component's data structure does not leak into the host app.

What is the best way to structure a Convex component for app integration?

The best way to structure a Convex component for app integration is to organize clean entry points, typed APIs, and hooks. This allows consumers to easily mount packaged backend features like a rate limiter across different applications.

Can I publish a Convex component with TypeScript to npm?

Yes, you can publish a Convex component with TypeScript to npm by preparing the package metadata, build configuration, and versioning practices. The workflow requires typed query and mutation exports for a publish-ready structure.

Do I need semantic versioning for Convex component distribution?

Yes, semantic versioning is required for Convex component distribution. Applying clear packaging conventions and versioning practices ensures that consumers can safely mount and update the component across multiple applications.

Why should I use isolated packages instead of direct schema imports in Convex?

Using isolated packages instead of direct schema imports prevents configuration, functions, and schemas from leaking into the host app. This approach allows backend features to be cleanly mounted multiple times without conflicts.