From 74fd0f0f1a3a46111aa27276eec4b17279545a69 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Fri, 13 Feb 2026 17:57:01 +0000
Subject: [PATCH 1/2] Initial plan
From 4761989442cad0766ff90d6120cf0cd020056f77 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Fri, 13 Feb 2026 18:07:16 +0000
Subject: [PATCH 2/2] docs: scan all packages, create missing READMEs, update
root README and website docs
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Create README.md for @objectstack/rest (was missing)
- Create README.md for @objectstack/plugin-security (was missing)
- Update root README.md: fix license badge (MIT→Apache 2.0), fix git clone URL (nicecui→objectstack-ai), add all 7 framework adapters, add plugin-security/plugin-dev/rest/create-objectstack/vscode, update schema count (139→175), fix package reference path
- Update content/docs/concepts/packages.mdx: expand from 16 to 25 packages, add all 7 adapters (Express, Fastify, Hono, NestJS, Next.js, Nuxt, SvelteKit), add plugin-security/plugin-dev/rest/create-objectstack/vscode, update dependency graph, update schema count
- Update content/docs/references/index.mdx: update protocol module counts and total (139→175), add Cloud and Studio protocols, remove obsolete Hub protocol
- Update content/docs/guides/cheatsheets/quick-reference.mdx: update schema count (139→175)
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
---
README.md | 27 ++-
content/docs/concepts/packages.mdx | 225 ++++++++++++++++--
.../guides/cheatsheets/quick-reference.mdx | 2 +-
content/docs/references/index.mdx | 19 +-
packages/plugins/plugin-security/README.md | 48 ++++
packages/rest/README.md | 51 ++++
6 files changed, 339 insertions(+), 33 deletions(-)
create mode 100644 packages/plugins/plugin-security/README.md
create mode 100644 packages/rest/README.md
diff --git a/README.md b/README.md
index 82b8855ce7..f49b4a4b90 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@

[](https://www.typescriptlang.org/)
-[](https://opensource.org/licenses/MIT)
+[](https://opensource.org/licenses/Apache-2.0)
> **The "Constitution" of the Post-SaaS Operating System.**
@@ -32,14 +32,14 @@ ObjectStack is a metadata-driven platform built on three foundational protocols:
- [Quick Reference](./content/docs/references/quick-reference.mdx) — Fast protocol lookup
- **Protocol References:**
- - [Protocol Reference](./content/docs/references/) — All protocol specifications (139 Zod schemas)
+ - [Protocol Reference](./content/docs/references/) — All protocol specifications (175 Zod schemas)
- [ObjectQL](./content/docs/objectql/) — Data layer documentation
- [ObjectUI](./content/docs/objectui/) — UI layer documentation
- [ObjectOS](./content/docs/objectos/) — System layer documentation
- **Development:**
- [Developer Guide](./content/docs/developer/) — Tutorials and best practices
- - [Package Reference](./content/docs/framework/packages.mdx) — All 15 packages
+ - [Package Reference](./content/docs/concepts/packages.mdx) — All 25 packages
- [Contributing Guide](./CONTRIBUTING.md) — How to contribute
## 🚀 Quick Start
@@ -64,7 +64,7 @@ os studio
```bash
# 1. Clone and install
-git clone https://github.com/nicecui/spec.git
+git clone https://github.com/objectstack-ai/spec.git
cd spec
pnpm install
@@ -127,6 +127,7 @@ os doctor # Check environment health
| [`@objectstack/objectql`](packages/objectql) | ObjectQL query engine and schema registry | 🟢 Active |
| [`@objectstack/runtime`](packages/runtime) | Runtime utilities, DriverPlugin, AppPlugin | 🟢 Active |
| [`@objectstack/metadata`](packages/metadata) | Metadata loading and persistence | 🟢 Active |
+| [`@objectstack/rest`](packages/rest) | REST API Server — auto-generated endpoints from protocol | 🟢 Active |
### Client Packages
@@ -142,13 +143,29 @@ os doctor # Check environment health
| [`@objectstack/driver-memory`](packages/plugins/driver-memory) | In-memory driver (reference implementation, zero deps) | 🟢 Active |
| [`@objectstack/plugin-hono-server`](packages/plugins/plugin-hono-server) | HTTP server plugin (Hono-based, auto-discovery) | 🟢 Active |
| [`@objectstack/plugin-msw`](packages/plugins/plugin-msw) | Mock Service Worker plugin for browser testing | 🟢 Active |
-| [`@objectstack/plugin-auth`](packages/plugins/plugin-auth) | Authentication & identity plugin (structure implemented) | 🟡 In Development |
+| [`@objectstack/plugin-auth`](packages/plugins/plugin-auth) | Authentication & identity plugin (better-auth based) | 🟡 In Development |
+| [`@objectstack/plugin-security`](packages/plugins/plugin-security) | RBAC, Row-Level Security, and Field-Level Security | 🟢 Active |
+| [`@objectstack/plugin-dev`](packages/plugins/plugin-dev) | Dev mode — auto-enables all services with in-memory stubs | 🟢 Active |
+
+### Framework Adapters
+
+| Package | Description | Status |
+| :--- | :--- | :--- |
+| [`@objectstack/express`](packages/adapters/express) | Express adapter | 🟢 Active |
+| [`@objectstack/fastify`](packages/adapters/fastify) | Fastify adapter | 🟢 Active |
+| [`@objectstack/hono`](packages/adapters/hono) | Hono adapter (Node.js, Bun, Deno, Cloudflare Workers) | 🟢 Active |
+| [`@objectstack/nestjs`](packages/adapters/nestjs) | NestJS module integration | 🟢 Active |
+| [`@objectstack/nextjs`](packages/adapters/nextjs) | Next.js App Router adapter | 🟢 Active |
+| [`@objectstack/nuxt`](packages/adapters/nuxt) | Nuxt adapter (h3-based) | 🟢 Active |
+| [`@objectstack/sveltekit`](packages/adapters/sveltekit) | SvelteKit adapter | 🟢 Active |
### Tools & Apps
| Package | Description | Status |
| :--- | :--- | :--- |
| [`@objectstack/cli`](packages/cli) | CLI: init, dev, serve, studio, compile, validate, generate | 🟢 Active |
+| [`create-objectstack`](packages/create-objectstack) | Project scaffolder (`npx create-objectstack`) | 🟢 Active |
+| [`objectstack-vscode`](packages/vscode-objectstack) | VSCode extension — autocomplete, validation, diagnostics | 🟢 Active |
| [`@objectstack/studio`](apps/studio) | Studio UI (Object Explorer, Schema Inspector) | 🟢 Active |
| [`@objectstack/docs`](apps/docs) | Documentation site (Fumadocs + Next.js) | 🟢 Active |
diff --git a/content/docs/concepts/packages.mdx b/content/docs/concepts/packages.mdx
index c4e1d408f7..6d23f03bdf 100644
--- a/content/docs/concepts/packages.mdx
+++ b/content/docs/concepts/packages.mdx
@@ -5,7 +5,7 @@ description: Complete reference of all ObjectStack packages in the monorepo
# Package Reference
-ObjectStack is distributed as a monorepo containing **16 packages** organized into core packages, adapters, and plugins.
+ObjectStack is distributed as a monorepo containing **25 packages** organized into core packages, adapters, and plugins.
> **Note for AI Agents**: Each package's `README.md` contains a specific "AI Development Context" section describing its architectural role and usage rules.
@@ -14,10 +14,11 @@ ObjectStack is distributed as a monorepo containing **16 packages** organized in
| Category | Count | Description |
| :--- | :---: | :--- |
| [Core Packages](#core-packages) | 9 | Essential runtime, protocols, client SDKs, and CLI |
-| [Adapter Packages](#adapter-packages) | 3 | Framework adapters (Hono, NestJS, Next.js) |
-| [Plugin Packages](#plugin-packages) | 4 | Drivers, server, and authentication plugins |
+| [Framework Adapters](#framework-adapters) | 7 | Express, Fastify, Hono, NestJS, Next.js, Nuxt, SvelteKit |
+| [Plugin Packages](#plugin-packages) | 6 | Drivers, server, auth, security, dev, and MSW plugins |
+| [Tools](#tools) | 3 | Project scaffolder, VSCode extension, REST API server |
-**Total: 16 packages**
+**Total: 25 packages**
---
@@ -42,7 +43,7 @@ ObjectStack is distributed as a monorepo containing **16 packages** organized in
- `Integration` - Integration protocol schemas
- `Shared` - Shared utilities and identifiers
-**Protocol Count:** 139 Zod schemas
+**Protocol Count:** 175 Zod schemas
**Learn more:** [Protocol Reference](/docs/references)
@@ -291,10 +292,40 @@ ObjectStack is distributed as a monorepo containing **16 packages** organized in
---
-## Adapter Packages
+## Framework Adapters
Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specific HTTP frameworks.
+### @objectstack/express
+
+**Description:** Express Framework Adapter
+
+**Purpose:** Converts ObjectStack's standard HTTP dispatch interface to Express routes.
+
+**Key Features:**
+- Maps standard routes to Express handlers
+- Supports Express v5 middleware chain
+- Bearer token authentication via AuthPlugin
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
+
+---
+
+### @objectstack/fastify
+
+**Description:** Fastify Framework Adapter
+
+**Purpose:** Converts ObjectStack's standard HTTP dispatch interface to Fastify routes.
+
+**Key Features:**
+- Maps standard routes to Fastify handlers
+- Supports Fastify v5 plugin system
+- Bearer token authentication via AuthPlugin
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
+
+---
+
### @objectstack/hono
**Description:** Hono Framework Adapter
@@ -334,9 +365,39 @@ Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specifi
**Key Features:**
- App Router integration
- API route handlers
-- Server-side data access
+- Server-side data access and server actions
-**Implementation Status:** 🔄 **IN PROGRESS**
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
+
+---
+
+### @objectstack/nuxt
+
+**Description:** Nuxt Framework Adapter
+
+**Purpose:** Integrates ObjectStack with Nuxt server routes via h3.
+
+**Key Features:**
+- h3 event handler integration
+- Nitro server route support
+- Bearer token authentication via AuthPlugin
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
+
+---
+
+### @objectstack/sveltekit
+
+**Description:** SvelteKit Framework Adapter
+
+**Purpose:** Integrates ObjectStack with SvelteKit hooks and server routes.
+
+**Key Features:**
+- SvelteKit handle hook integration
+- Server route handlers
+- Bearer token authentication via AuthPlugin
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
---
@@ -428,7 +489,7 @@ Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specifi
**Description:** Authentication & Identity Plugin for ObjectStack
-**Purpose:** Provides authentication and identity management services for ObjectStack applications with plugin structure ready for better-auth integration.
+**Purpose:** Provides authentication and identity management services for ObjectStack applications with better-auth integration.
**Key Features:**
- **Plugin Lifecycle**: Full init/start/destroy lifecycle implementation
@@ -436,14 +497,14 @@ Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specifi
- **HTTP Route Scaffolding**: `/api/v1/auth/*` endpoints via IHttpServer
- **Configuration Support**: Uses `AuthConfig` schema from `@objectstack/spec/system`
- **OAuth Provider Support**: Configuration for Google, GitHub, Microsoft, etc.
-- **Advanced Features**: Organization/team support, 2FA, passkeys, magic links (planned)
-- **Session Management**: Configurable session expiry and refresh (planned)
+- **ObjectQL Database**: Uses ObjectQL for data persistence (no ORM required)
+- **Advanced Features**: Organization/team support, 2FA, passkeys, magic links
**API Routes:**
-- `POST /api/v1/auth/login` - User login
-- `POST /api/v1/auth/register` - User registration
-- `POST /api/v1/auth/logout` - User logout
-- `GET /api/v1/auth/session` - Get current session
+- `POST /api/v1/auth/sign-in/email` - Sign in with email and password
+- `POST /api/v1/auth/sign-up/email` - Register new user
+- `POST /api/v1/auth/sign-out` - Sign out
+- `GET /api/v1/auth/get-session` - Get current session
**Use Cases:**
- Adding authentication to ObjectStack applications
@@ -459,6 +520,122 @@ Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specifi
---
+### @objectstack/plugin-security
+
+**Description:** Security Plugin for ObjectStack — RBAC, RLS, and Field-Level Security Runtime
+
+**Purpose:** Provides runtime security enforcement for ObjectStack applications, including role-based access control, row-level security, and field-level masking.
+
+**Key Features:**
+- **RBAC Permission Evaluator**: Checks object-level CRUD permissions per user role
+- **Row-Level Security (RLS)**: Compiles policy expressions into ObjectQL query filters
+- **Field-Level Masking**: Strips non-readable fields from query results
+- **ObjectQL Middleware Integration**: Transparent security enforcement on every operation
+- **Most-Permissive Merging**: If any role grants access, the operation is allowed
+
+**Security Chain (4 steps):**
+1. Resolve permission sets from user roles
+2. Check CRUD permissions on objects
+3. Inject RLS filters into queries
+4. Mask restricted fields in results
+
+**Use Cases:**
+- Multi-tenant applications with role-based access
+- Data isolation between teams/organizations
+- Compliance requirements (field masking for sensitive data)
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED** - Production ready
+
+---
+
+### @objectstack/plugin-dev
+
+**Description:** Development Mode Plugin for ObjectStack
+
+**Purpose:** Auto-enables all 17+ kernel services with in-memory implementations for a full-featured API development environment.
+
+**Key Features:**
+- **Zero Configuration**: Single plugin enables entire development stack
+- **In-Memory Services**: All services use in-memory implementations
+- **Full Protocol Support**: Auth, Data, Metadata, Storage, Analytics, and more
+- **Hot Reload Compatible**: Works with `os dev` for hot-reload workflows
+
+**Use Cases:**
+- Rapid prototyping without database setup
+- Local development and testing
+- CI/CD pipeline testing
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED** - Development ready
+
+---
+
+## Tools
+
+### @objectstack/rest
+
+**Description:** ObjectStack REST API Server — automatic REST endpoint generation from protocol
+
+**Purpose:** Turns ObjectStack schema definitions into fully functional CRUD endpoints with zero boilerplate.
+
+**Key Features:**
+- **Auto-Generated Endpoints**: CRUD routes from object schemas
+- **Batch Operations**: `/createMany`, `/updateMany`, `/deleteMany`, `/batch` endpoints
+- **Metadata API**: `/meta`, `/meta/{type}`, `/meta/{type}/{name}` for runtime introspection
+- **Discovery Endpoint**: `/api/v1` for API self-documentation
+- **Route Manager**: Centralized route registration, grouping, and middleware chain
+- **HTTP Caching**: ETag and Last-Modified header support
+- **Configurable Paths**: Plural, kebab-case, and camelCase path transformations
+
+**Use Cases:**
+- Auto-generating REST APIs from metadata
+- Building production API servers
+- Custom route management
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED** - Production ready
+
+---
+
+### create-objectstack
+
+**Description:** Create a new ObjectStack project — `npx create-objectstack`
+
+**Purpose:** Interactive project scaffolder for quickly creating new ObjectStack projects.
+
+**Key Features:**
+- **Interactive Mode**: Guided project setup with prompts
+- **Template Support**: `full-stack`, `api-only`, `plugin` templates
+- **Dependency Installation**: Automatic `pnpm install` (skippable)
+- **Zero Config**: Works out-of-the-box with sensible defaults
+
+**Use Cases:**
+- Starting new ObjectStack projects
+- Creating plugin packages
+- Scaffolding from templates
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED** - Production ready
+
+---
+
+### objectstack-vscode
+
+**Description:** ObjectStack Protocol — Autocomplete, validation, and inline diagnostics for `.object.ts`, `.view.ts`, and `objectstack.config.ts` files
+
+**Purpose:** VSCode extension providing IDE support for ObjectStack protocol development.
+
+**Key Features:**
+- **Autocomplete**: IntelliSense for ObjectStack schemas
+- **Validation**: Real-time schema validation with error diagnostics
+- **Protocol Awareness**: Understands `.object.ts`, `.view.ts`, and config files
+
+**Use Cases:**
+- ObjectStack development in VSCode
+- Real-time feedback on schema definitions
+- Productivity improvement
+
+**Implementation Status:** ✅ **FULLY IMPLEMENTED**
+
+---
+
## Package Dependencies
### Dependency Graph
@@ -473,19 +650,31 @@ Framework adapters that bridge ObjectStack's unified `HttpDispatcher` to specifi
│ ↓
│ └─→ @objectstack/runtime (uses objectql engine)
│ ↓
+ │ ├─→ @objectstack/rest (REST API generation)
│ ├─→ @objectstack/client (consumes runtime APIs)
│ │ ↓
│ │ └─→ @objectstack/client-react (wraps client)
│ └─→ Adapters:
+ │ ├─→ @objectstack/express (Express routes)
+ │ ├─→ @objectstack/fastify (Fastify routes)
│ ├─→ @objectstack/hono (Hono routes)
│ ├─→ @objectstack/nestjs (NestJS modules)
- │ └─→ @objectstack/nextjs (Next.js routes)
+ │ ├─→ @objectstack/nextjs (Next.js routes)
+ │ ├─→ @objectstack/nuxt (Nuxt/h3 routes)
+ │ └─→ @objectstack/sveltekit (SvelteKit hooks)
└─→ @objectstack/cli (validates against spec schemas)
Plugins (depend on core packages):
├─→ @objectstack/driver-memory (implements driver interface)
├─→ @objectstack/plugin-hono-server (HTTP server via @objectstack/hono)
- └─→ @objectstack/plugin-msw (mocks for testing via runtime)
+ ├─→ @objectstack/plugin-msw (mocks for testing via runtime)
+ ├─→ @objectstack/plugin-auth (authentication via better-auth)
+ ├─→ @objectstack/plugin-security (RBAC, RLS, field masking)
+ └─→ @objectstack/plugin-dev (dev mode, all services in-memory)
+
+Tools:
+ ├─→ create-objectstack (project scaffolder)
+ └─→ objectstack-vscode (VSCode extension)
```
### Installation
@@ -534,7 +723,7 @@ All packages in the monorepo are versioned together and released simultaneously
Click on any protocol name to view its complete API reference.
diff --git a/content/docs/references/index.mdx b/content/docs/references/index.mdx
index cb583ed7b9..549ac588ab 100644
--- a/content/docs/references/index.mdx
+++ b/content/docs/references/index.mdx
@@ -15,21 +15,22 @@ These reference pages are **auto-generated** from the Zod source files in `packa
| Module | Schemas | Description |
| :--- | :---: | :--- |
-| [Data Protocol](#data-protocol) | 18 | Objects, Fields, Queries, Drivers (ObjectQL) |
-| [UI Protocol](#ui-protocol) | 10 | Views, Apps, Dashboards, Reports, Actions (ObjectUI) |
-| [Kernel Protocol](#kernel-protocol) | 17 | Plugin Lifecycle, Manifests, Events, Service Registry |
-| [System Protocol](#system-protocol) | 22 | Logging, Jobs, Cache, Metrics, Notifications (ObjectOS) |
-| [AI Protocol](#ai-protocol) | 13 | Agents, RAG, Models, Conversations, NLQ |
-| [API Protocol](#api-protocol) | 20 | REST, GraphQL, WebSocket, Batch, Discovery |
+| [Data Protocol](#data-protocol) | 19 | Objects, Fields, Queries, Drivers (ObjectQL) |
+| [UI Protocol](#ui-protocol) | 18 | Views, Apps, Dashboards, Reports, Actions (ObjectUI) |
+| [Kernel Protocol](#kernel-protocol) | 32 | Plugin Lifecycle, Manifests, Events, Service Registry |
+| [System Protocol](#system-protocol) | 27 | Logging, Jobs, Cache, Metrics, Notifications (ObjectOS) |
+| [AI Protocol](#ai-protocol) | 14 | Agents, RAG, Models, Conversations, NLQ |
+| [API Protocol](#api-protocol) | 25 | REST, GraphQL, WebSocket, Batch, Discovery |
| [Automation Protocol](#automation-protocol) | 8 | Flows, Workflows, Approvals, Triggers, ETL |
| [Security Protocol](#security-protocol) | 5 | Permissions, Policies, RLS, Sharing |
| [Identity Protocol](#identity-protocol) | 4 | Users, Organizations, Roles, SCIM |
-| [Hub Protocol](#hub-protocol) | 9 | Marketplace, Plugin Registry, Tenancy, Licensing |
+| [Cloud Protocol](#cloud-protocol) | 4 | Cloud deployment, Marketplace, Tenancy, Licensing |
| [Integration Protocol](#integration-protocol) | 7 | Connectors, Message Queues, HTTP, Object Storage |
-| [Shared Protocol](#shared-protocol) | 4 | HTTP, Identifiers, Mappings, Auth |
+| [Shared Protocol](#shared-protocol) | 9 | HTTP, Identifiers, Mappings, Enums, Auth |
| [QA Protocol](#qa-protocol) | 1 | Test Suites and BDD Scenarios |
+| [Studio Protocol](#studio-protocol) | 1 | Studio plugin development |
-**Total: 139 Zod schemas** (across 13 protocol modules + 1 root stack schema)
+**Total: 175 Zod schemas** (across 14 protocol modules + 1 root stack schema)
---
diff --git a/packages/plugins/plugin-security/README.md b/packages/plugins/plugin-security/README.md
new file mode 100644
index 0000000000..d2a6cd70d5
--- /dev/null
+++ b/packages/plugins/plugin-security/README.md
@@ -0,0 +1,48 @@
+# @objectstack/plugin-security
+
+Security Plugin for ObjectStack — RBAC, Row-Level Security (RLS), and Field-Level Security runtime.
+
+## Features
+
+- **RBAC Permission Evaluator**: Checks object-level CRUD permissions per user role with most-permissive merging across multiple roles.
+- **Row-Level Security (RLS)**: Compiles RLS policy expressions into ObjectQL query filters, automatically injected into all read operations.
+- **Field-Level Masking**: Strips non-readable fields from query results and identifies non-editable fields.
+- **ObjectQL Middleware Integration**: Hooks into the ObjectQL pipeline to enforce security transparently on every operation.
+- **System Bypass**: System-level operations skip security checks for internal workflows.
+
+## Usage
+
+```typescript
+import { SecurityPlugin } from '@objectstack/plugin-security';
+import { ObjectKernel } from '@objectstack/core';
+
+const kernel = new ObjectKernel({
+ plugins: [
+ new SecurityPlugin(),
+ ],
+});
+```
+
+### Exported Components
+
+```typescript
+import {
+ SecurityPlugin,
+ PermissionEvaluator,
+ RLSCompiler,
+ FieldMasker,
+} from '@objectstack/plugin-security';
+```
+
+## Architecture
+
+The plugin registers three core services and executes a 4-step security chain on every data operation:
+
+1. **Resolve Permission Sets** — Match user roles to permission set definitions from metadata.
+2. **Check Object Permissions** — Validate CRUD access (`allowRead`, `allowCreate`, `allowEdit`, `allowDelete`).
+3. **Inject RLS Filters** — Compile row-level policy expressions and merge them into the query.
+4. **Mask Fields** — Remove restricted fields from results based on field-level permissions.
+
+## License
+
+Apache-2.0 © ObjectStack
diff --git a/packages/rest/README.md b/packages/rest/README.md
new file mode 100644
index 0000000000..871c0c3189
--- /dev/null
+++ b/packages/rest/README.md
@@ -0,0 +1,51 @@
+# @objectstack/rest
+
+ObjectStack REST API Server — automatic REST endpoint generation from protocol metadata. Turns your ObjectStack schema definitions into fully functional CRUD endpoints with zero boilerplate.
+
+## Features
+
+- **Auto-Generated Endpoints**: CRUD routes (`GET`, `POST`, `PUT`, `PATCH`, `DELETE`) from object schemas.
+- **Batch Operations**: `/createMany`, `/updateMany`, `/deleteMany`, `/batch` endpoints.
+- **Metadata API**: `/meta`, `/meta/{type}`, `/meta/{type}/{name}` for runtime introspection.
+- **Discovery Endpoint**: `/api/v1` for API self-documentation.
+- **Route Manager**: Centralized route registration, grouping, and middleware chain.
+- **HTTP Caching**: ETag and Last-Modified header support.
+- **Configurable Paths**: Plural, kebab-case, and camelCase path transformations.
+
+## Usage
+
+```typescript
+import { createRestApiPlugin } from '@objectstack/rest';
+
+const restPlugin = createRestApiPlugin({
+ api: {
+ version: 'v1',
+ basePath: '/api',
+ },
+});
+
+// Register with ObjectKernel
+kernel.use(restPlugin);
+```
+
+### Standalone RestServer
+
+```typescript
+import { RestServer } from '@objectstack/rest';
+
+const server = new RestServer(protocol, config);
+server.registerRoutes(httpServer);
+```
+
+### Route Manager
+
+```typescript
+import { RouteManager } from '@objectstack/rest';
+
+const routes = new RouteManager();
+routes.register({ method: 'GET', path: '/custom', handler });
+```
+
+## License
+
+Apache-2.0 © ObjectStack