with one click
with one click
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | fragno |
| description | > Use when this capability is needed. |
Note: All file paths referenced in this document are relative to this SKILL.md file.
Fragno is a framework-agnostic, type-safe full-stack TypeScript toolkit that enables building portable full-stack libraries called "fragments". Fragments include backend routes, (optional) client hooks and (optional) database integration.
Important: Before integrating any first-party fragment, fetch the published docs with curl when
they exist. Use the search endpoint to find the right page, then fetch the full Markdown docs. For
fragments that do not yet have published Markdown docs (currently Pi, Resend, and GitHub App), use
this skill's local reference files plus the package README and repo examples.
curl -s "https://fragno.dev/api/search?query=forms"curl -L "https://fragno.dev/docs/forms/quickstart" -H "accept: text/markdown"This skill will aid you to integrate a Fragment into an application. To do this we have to mount the Fragment's backend routes, migrate/generate the database schema, and initialize the client-side hooks.
In this case you will first start by reading the Forms fragment specific reference file.
Install the Fragment package via the user's npm-compatible package manager.
import { createFormsFragment } from "@fragno-dev/forms";DatabaseAdapter parameter.@fragno-dev/db and @fragno-dev/cli.databaseAdapter in a central place.
@fragno-dev/db/dialects@fragno-dev/db/driversnpx fragno-cli db generate lib/comment-fragment-server.ts --output migrations/001.sqlnpx fragno-cli db generate lib/comment-fragment-server.ts --format drizzle --output schema/fragno-schema.tsnpx fragno-cli db generate lib/comment-fragment-server.ts --format prisma --output prisma/schema/fragno.prismaFragment's use web standard Request/Response objects, so they can be mounted in any framework that
supports them. There is also the framework-specific handlersFor function.
/api/${fragmentName}.Next.js example:
// This uses the Next.js file-based routing pattern.
import { createExampleFragmentInstance } from "@/lib/example-fragment-server";
const exampleFragment = createExampleFragmentInstance();
export const { GET, POST, PUT, PATCH, DELETE } = exampleFragment.handlersFor("next-js");
React Router v7 (Remix) example:
import type { Route } from "./+types/example-fragment";
import { createExampleFragmentInstance } from "@/lib/example-fragment-server";
export async function loader({ request }: Route.LoaderArgs) {
return await createExampleFragmentInstance().handler(request);
}
export async function action({ request }: Route.ActionArgs) {
return await createExampleFragmentInstance().handler(request);
}
For Node.js (Express/Node.js) a separate package is required: @fragno-dev/node.
/react,
/vue, /svelte, /solid, /vanilla).mountRoute to the client creator:
...
export const exampleFragment = createExampleFragmentClient({
baseUrl: "/",
mountRoute: "/custom/api/example-fragment",
});
./references/middleware.md../references/client-customization.md../references/dispatchers.md.Present these to the user to come up with a plan for further deep integration into their application.
Use these fragments when you need their domain-specific features. Always curl the fragment docs
when published before wiring anything.
Current catalogue covered by this skill: Auth, Forms, GitHub App, Pi, Resend, Stripe, Telegram, Upload, and Workflows.
@fragno-dev/auth)Definition: Minimal email/password auth with session cookies and DB-backed users/sessions.
Use when: you need a simple, self-hosted auth flow (sign-up/sign-in/sign-out, session, roles) and can store credentials in your database.
Reference: ./references/first-party-fragments/auth.md.
Docs lookup: curl -s "https://fragno.dev/api/search?query=auth%20fragment".
@fragno-dev/forms)Definition: JSON Schema and JSON Forms-based form builder plus response collection stored in your database.
Use when: you need schema-driven forms, admin-managed form lifecycle, and stored submissions.
Reference: ./references/first-party-fragments/forms.md.
Docs: curl -L "https://fragno.dev/docs/forms/quickstart" -H "accept: text/markdown".
@fragno-dev/github-app-fragment)Definition: GitHub App integration for installations, repositories, webhooks, and pull-request operations.
Use when: your product needs repo-aware features, GitHub App auth, installation sync, or PR review actions.
Reference: ./references/first-party-fragments/github.md.
Docs: no published Markdown docs yet; use local references:
packages/github-app-fragment/README.mdapps/docs/app/routes/github.tsx@fragno-dev/pi-fragment)Definition: Durable AI agents with workflow-backed sessions, deterministic tool replay, and typed session/message clients.
Use when: you want product-embedded agents whose sessions survive retries/restarts and whose tools must replay safely.
Reference: ./references/first-party-fragments/pi.md.
Docs: no published Markdown docs yet; use local references:
packages/pi-fragment/README.mdpackages/pi-fragment/CLI.mdapps/docs/app/routes/pi.tsx@fragno-dev/resend-fragment)Definition: Send, receive, and thread email with a canonical local message store and typed hooks.
Use when: your app needs outbound email, inbound email webhooks, owned thread history, or support / workflow inbox features.
Reference: ./references/first-party-fragments/resend.md.
Docs: no published Markdown docs yet; use local references:
packages/resend-fragment/README.mdapps/docs/app/routes/resend.tsx@fragno-dev/stripe)Definition: Stripe subscription management with webhook-backed local state and client mutators.
Use when: your app sells subscriptions and you want built-in checkout, upgrade, cancel, and admin hooks.
Reference: ./references/first-party-fragments/stripe.md.
Docs: curl -L "https://fragno.dev/docs/stripe/quickstart" -H "accept: text/markdown".
@fragno-dev/telegram-fragment)Definition: Telegram bot runtime with durable webhook intake, command registry, stored chat state, and typed client hooks.
Use when: you need a Telegram bot that is part of your product, with commands, persisted chats, and message send/reply flows.
Reference: ./references/first-party-fragments/telegram.md.
Docs:
curl -s "https://fragno.dev/api/search?query=telegram%20fragment"curl -L "https://fragno.dev/docs/telegram/quickstart" -H "accept: text/markdown"@fragno-dev/upload)Definition: Full-stack uploads with a normalized file model, S3/R2 or filesystem storage adapters, and client helpers for direct or server-streamed uploads.
Use when: you need file uploads with progress tracking and storage-backed file metadata.
Reference: ./references/first-party-fragments/upload.md.
Docs: curl -L "https://fragno.dev/docs/upload/quickstart" -H "accept: text/markdown".
@fragno-dev/workflows)Definition: Durable, long-running workflows with steps, timers, retries, and event waits backed by your database.
Use when: you need reliable multi-step processes and an HTTP API/CLI to manage instances.
Reference: ./references/first-party-fragments/workflows.md.
Docs: curl -L "https://fragno.dev/docs/workflows/quickstart" -H "accept: text/markdown".
Platform-specific guides for common deployment patterns. Read the relevant guide when the user's stack matches.
Use when: the user deploys to Cloudflare Workers and wants embedded SQLite storage via Durable Objects (no external database needed).
Covers: DurableObjectDialect + CloudflareDurableObjectsDriverConfig, the dry-run/live init
pattern, DO class boilerplate with migrate(), wrangler config, worker re-export, and routing
(Hono, plain Worker, React Router).
Reference: ./references/integrations/cloudflare-durable-objects.md.
Use when: the user uses Drizzle ORM and wants to merge Fragno-generated schemas with their app schema.
Covers: --format drizzle CLI output, spreading Fragment schemas into the app schema, dual-schema
drizzle.config.ts, and the schema update workflow.
Reference: ./references/integrations/drizzle-schema-integration.md.
The Fragno documentation is available online:
curl -s "https://fragno.dev/api/search?query=databaseAdapter"curl -L "https://fragno.dev/docs/fragno/user-quick-start" -H "accept: text/markdown"curl -L "https://fragno.dev/docs/forms/static-forms" -H "accept: text/markdown"The following reference files are available in ./references/: Note: all reference paths are
relative to this skill file.
| File | Description |
|---|---|
server-integration.md | Server-side integration: Framework-specific mounting patterns for server-side API routes |
client-integration.md | Creating client-side integration modules and using Fragment hooks/composables in UI components |
client-customization.md | Customizing HTTP requests made by Fragno Fragments (authentication, CORS, interceptors) |
middleware.md | Intercepting and processing requests before they reach route handlers |
services.md | Running functions defined by Fragments on the server, including calling route handlers directly |
dispatchers.md | Durable hooks dispatchers: background processing, retries, and platform-specific setups |
integrations/cloudflare-durable-objects.md | Deploy a Fragment in a Cloudflare DO: adapter, init pattern, DO class, wrangler config, routing |
integrations/drizzle-schema-integration.md | Merge Fragno-generated Drizzle schemas with app schemas and configure Drizzle Kit |
first-party-fragments/auth.md | Auth fragment one-pager (install, routes, client, migrations) |
first-party-fragments/forms.md | Forms fragment one-pager (schemas, hooks, admin routes, migrations) |
first-party-fragments/github.md | GitHub App fragment one-pager (app auth, webhooks, sync routes, client, migrations) |
first-party-fragments/pi.md | Pi fragment one-pager (agents, workflows dependency, sessions, client, migrations) |
first-party-fragments/resend.md | Resend fragment one-pager (outbound/inbound email, threads, hooks, migrations) |
first-party-fragments/stripe.md | Stripe fragment one-pager (subscriptions, webhooks, admin hooks) |
first-party-fragments/telegram.md | Telegram fragment one-pager (webhook, commands, chats/messages, hooks, migrations) |
first-party-fragments/upload.md | Upload fragment one-pager (storage adapters, helpers, routes) |
first-party-fragments/workflows.md | Workflows fragment one-pager (runner/dispatcher, routes, CLI) |
Converted and distributed by TomeVault — claim your Tome and manage your conversions.