Build Full-StackDeveloper Beta
Libraries
Build framework-agnostic libraries that embed backend and frontend logic in your users' application
(coming soon)
Libraries
Traditional libraries target either the frontend or backend.
Fragno Fragments
With Fragno, you build libraries as a full-stack package: Fragments.
Application
Developers use Fragments to quickly build full-fledged applications in their framework of choice.
Frameworks
These frameworks and more are already supported
With Fragno you build
End-to-end Libraries
Traditional libraries integrate on either the frontend or the backend, and the user is responsible for the glue-code.
A Fragment does both, it's a full-stack library. Users integrate with only a couple lines of code. No glue.
10x the developer experience.
Define your API routes with full type safety. Routes are embedded directly in your user's application.
import { defineRoute } from "@fragno-dev/core";import { z } from "zod";export const route = defineRoute({ method: "POST", path: "/ai-chat", inputSchema: z.string(), outputSchema: z.array(/* ... */), handler: async ({ input }, { jsonStream }) => { const message = await input.valid(); const eventStream = await openai.responses.create({ /* ... */ }); return jsonStream(async (stream) => { // ... await stream.write( /* ... */ ); }); },});
Embed Routes
HTTP Routes with automatic frontend bindings
State Management
Reactive client-side stores with invalidation built in
Streaming Support
Real-time newline-delimited JSON streaming
Middleware Support
Users can intercept and process requests before they reach your handlers
Documentation
Choose your path depending on whether you're a user or a library author
Introduction to Fragno
Understand the philosophy and vision behind Fragno. Learn why we think a framework-agnostic approach to building full-stack libraries is a great choice.