JSPM

silgi

0.1.0-beta.9
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 61
  • Score
    100M100P100Q101979F
  • License MIT

The fastest end-to-end type-safe RPC framework for TypeScript — compiled pipelines, single package, every runtime

Package Exports

  • silgi
  • silgi/ai
  • silgi/analytics
  • silgi/astro
  • silgi/aws-lambda
  • silgi/better-auth
  • silgi/broker
  • silgi/broker/nats
  • silgi/broker/redis
  • silgi/cache
  • silgi/client
  • silgi/client/fetch
  • silgi/client/ofetch
  • silgi/client/openapi
  • silgi/client/plugins
  • silgi/client/server
  • silgi/contract
  • silgi/cookies
  • silgi/cors
  • silgi/devalue
  • silgi/drizzle
  • silgi/express
  • silgi/hey-api
  • silgi/message-port
  • silgi/msgpack
  • silgi/nestjs
  • silgi/nextjs
  • silgi/ocache
  • silgi/ofetch
  • silgi/otel
  • silgi/peer
  • silgi/pinia-colada
  • silgi/pino
  • silgi/plugins
  • silgi/ratelimit
  • silgi/react
  • silgi/remix
  • silgi/solidstart
  • silgi/srvx
  • silgi/sveltekit
  • silgi/tanstack-query
  • silgi/tanstack-query/ssr
  • silgi/trpc
  • silgi/unstorage
  • silgi/ws
  • silgi/zod

Readme


Silgi — Type-safe RPC framework for TypeScript

npm version npm downloads CI license

Quick Start

npm install silgi
import { silgi } from 'silgi'
import { z } from 'zod'

const s = silgi({ context: (req) => ({ db: getDB() }) })

const appRouter = s.router({
  users: {
    list: k
      .$input(z.object({ limit: z.number().optional() }))
      .$resolve(({ input, ctx }) => ctx.db.users.find({ take: input.limit })),
  },
})

s.serve(appRouter, { port: 3000, scalar: true })

Features

  • Single package — server, client, 15 plugins, 14 adapters. One install.
  • Compiled pipeline — guards unrolled, handlers pre-linked at startup.
  • Guard / Wrap — guards enrich context (flat, sync fast-path). Wraps run before + after (onion).
  • Content negotiation — JSON, MessagePack, devalue. Automatic from Accept header.
  • Contract-first — define API shape, share types, implement separately.
  • Standard Schema — Zod, Valibot, ArkType.

Adapters

Import
Standalone s.serve() / s.handler()
Nitro v3 serverEntry + s.handler()
Express silgi/express
Fastify silgi/fastify
Elysia silgi/elysia
Next.js silgi/nextjs
Nuxt via Nitro serverEntry
SvelteKit silgi/sveltekit
Remix silgi/remix
Astro silgi/astro
SolidStart silgi/solidstart
NestJS silgi/nestjs
AWS Lambda silgi/aws-lambda
MessagePort silgi/message-port

Ecosystem

Built-in re-exports — no extra dependencies needed:

Import Package Use case
silgi/unstorage unstorage Key-value storage (Redis, KV, S3)
silgi/ocache ocache Cached functions with TTL + SWR
silgi/ofetch ofetch Universal fetch with auto-retry
silgi/srvx srvx Universal server (Node, Deno, Bun)

Integrations

  • TanStack QueryqueryOptions, mutationOptions, infiniteOptions, skipToken
  • React Server ActionscreateAction, useServerAction, useOptimisticServerAction
  • AI SDKrouterToTools() turns procedures into LLM tools
  • tRPC InteropfromTRPC() for incremental migration

Examples

npx giget@latest gh:productdevbook/silgi/examples/standalone my-app
npx giget@latest gh:productdevbook/silgi/examples/nextjs my-nextjs-app
npx giget@latest gh:productdevbook/silgi/examples/nuxt my-nuxt-app

10 examples: standalone, bun, express, elysia, nitro, nitro-h3, nextjs, nuxt, sveltekit, client-react.

Documentation

silgi.dev

Credits

  • oRPC — Pipeline architecture, client proxy, error handling, contract-first workflow
  • tRPC — Router/procedure model, end-to-end type inference
  • Elysia — Sucrose-style static handler analysis

License

MIT