# Ridu > Go-first content management with executable configuration, generated contracts, and one embedded runtime. Release documentation version: 0.1.1 - [Documentation map](https://riducms.com/docs/) - [Guides map](https://riducms.com/guides/) - [Complete documentation search](https://riducms.com/search/) - [Complete LLM documentation](https://riducms.com/llms-full.txt) - [Versioned complete documentation](https://riducms.com/v/0.1.1/llms-full.txt) ## Documentation - [Introduction](https://riducms.com/docs/getting-started/): Learn what Ridu provides, how an application is configured, and where to start. - [Quickstart](https://riducms.com/docs/quickstart/): Create a Ridu project with SQLite or PostgreSQL, save your first document, and read it with the generated TypeScript SDK. - [Capability status](https://riducms.com/docs/status/): See which Ridu capabilities are available, limited, experimental, or planned in the current release. - [Installation](https://riducms.com/docs/installation/): Install the CLI, choose project options, connect existing services, and recover an interrupted setup. - [Core concepts](https://riducms.com/docs/core-concepts/): See how Go configuration becomes database schema, APIs, generated types, and the admin. - [Go for TypeScript developers](https://riducms.com/docs/go-for-typescript/): Read and extend a Ridu application without having to become a Go expert first. - [Configuration](https://riducms.com/docs/configuration/): Compose the application, admin, localization, collections, globals, plugins, and runtime services. - [Collections and globals](https://riducms.com/docs/collections/): Define repeatable documents and singleton configuration, then add only the capabilities each resource needs. - [Fields](https://riducms.com/docs/fields/): Choose a field by the value you need to store and the authoring control you want. - [Conditional fields](https://riducms.com/docs/fields/conditional-fields/): Show an admin field from typed sibling or document values without confusing presentation with validation or access control. - [Text field](https://riducms.com/docs/fields/text/): Store a short string with typed length, uniqueness, localization, and admin options. - [Textarea field](https://riducms.com/docs/fields/textarea/): Store multi-line plain text as a string. - [Email field](https://riducms.com/docs/fields/email/): Store and validate an email-shaped string with a purpose-built admin control. - [Code field](https://riducms.com/docs/fields/code/): Store source text and give authors a syntax-aware editor without executing submitted code. - [Date field](https://riducms.com/docs/fields/date/): Store a day, time, or RFC 3339 timestamp with an explicit picker contract. - [Relationships, joins, and population](https://riducms.com/docs/relationships/): Reference one or many documents, model polymorphic targets, expose inverse joins, and populate safely. - [Number field](https://riducms.com/docs/fields/number/): Store a finite number with minimum, maximum, step, default, and query constraints. - [Checkbox field](https://riducms.com/docs/fields/checkbox/): Store an explicit boolean and present it as an authoring toggle. - [Select field](https://riducms.com/docs/fields/select/): Define a typed single or multiple choice with stable stored values and translated author labels. - [Content localization](https://riducms.com/docs/localization/): Store locale-specific values, configure fallback chains, query exact or all locales, and copy translations safely. - [Radio field](https://riducms.com/docs/fields/radio/): Show every singular configured choice while storing the same finite string contract as Select. - [Access control](https://riducms.com/docs/access-control/): Allow, deny, or filter operations with transaction-scoped Go rules. - [Slug field](https://riducms.com/docs/fields/slug/): Generate a required, unique URL segment from another string field while preserving author overrides. - [JSON field](https://riducms.com/docs/fields/json/): Store JSON-compatible data when the application cannot model a stable nested shape. - [Point field](https://riducms.com/docs/fields/point/): Store a portable longitude/latitude coordinate pair with bounded validation. - [Group field](https://riducms.com/docs/fields/group/): Model one nested object with child fields, generated types, and dotted query paths. - [Array field](https://riducms.com/docs/fields/array/): Model an ordered list of rows that share one child-field shape. - [Blocks field](https://riducms.com/docs/fields/blocks/): Author an ordered, discriminated list of different content shapes. - [Tabs field](https://riducms.com/docs/fields/tabs/): Organise document editing into named stored objects or presentation-only sections. - [Relationship field](https://riducms.com/docs/fields/relationship/): Reference one or many documents, including polymorphic targets, with access-aware pickers and population. - [Upload field](https://riducms.com/docs/fields/upload/): Reference documents in one upload-enabled collection with access-aware media selection. - [Row field](https://riducms.com/docs/fields/row/): Arrange direct child controls on the admin grid without changing document paths. - [Collapsible field](https://riducms.com/docs/fields/collapsible/): Group advanced controls behind an accessible disclosure without nesting their stored values. - [Hooks](https://riducms.com/docs/hooks/): Normalize input, derive values, coordinate nested work, and react after commit. - [UI field](https://riducms.com/docs/fields/ui/): Place guidance or a paired custom component in the editor without accepting or storing a document value. - [Join field](https://riducms.com/docs/fields/join/): Expose an access-controlled inverse view of documents that point to the current collection. - [Virtual field](https://riducms.com/docs/fields/virtual/): Return a typed value computed by trusted Go code without accepting or storing it. - [Plugin field](https://riducms.com/docs/fields/plugin/): Use a compiled plugin’s storage, validation, generated type, and paired admin control. - [Data access overview](https://riducms.com/docs/data-access/): Choose between the local Go API, REST, TypeScript SDK, GraphQL, and admin for a task. - [Local Go API](https://riducms.com/docs/local-api/): Read and mutate collections and globals through the full Ridu operation engine without an HTTP round trip. - [Querying data](https://riducms.com/docs/querying/): Filter, sort, paginate, select, populate, and localize collection reads through one finite query language. - [REST API](https://riducms.com/docs/rest-api/): Call Ridu’s generated HTTP contract from any language or Fetch-compatible runtime. - [Custom endpoints](https://riducms.com/docs/custom-endpoints/): Add root, collection, and global HTTP handlers with generated OpenAPI metadata. - [CORS](https://riducms.com/docs/cors/): Allow cross-origin browser clients without weakening Ridu’s HTTP boundary. - [Authentication](https://riducms.com/docs/authentication/): Configure identities, safe account provisioning, cookie sessions, password recovery, API keys, and custom request strategies. - [Editorial workflows](https://riducms.com/docs/editorial-workflows/): Choose the task guide for duplication, bulk and trash actions, document locks, preferences, drafts, versions, and scheduling. - [Model Context Protocol](https://riducms.com/docs/mcp/): Give authenticated MCP clients read-only access to selected Ridu content. - [Drafts and versions](https://riducms.com/docs/drafts-and-versions/): Keep bounded revision history, control draft visibility, restore snapshots, publish changes, and schedule collection changes. - [Browse and organize content](https://riducms.com/docs/browsing-content/): Configure useful list titles and columns, then search, filter, sort, select, and navigate collection content. - [Saved views, folders, and hierarchy](https://riducms.com/docs/saved-views-and-hierarchy/): Persist an author’s list workspace and configure folder filters or parent-child organization. - [Create and edit documents](https://riducms.com/docs/editing-documents/): Understand the schema-driven editor, validation, relationships, dirty state, revisions, and save outcomes. - [Bulk actions and trash](https://riducms.com/docs/bulk-and-trash/): Change a reviewed set atomically, recover soft-deleted documents, and permanently delete content. - [Coordinate editors with document locks](https://riducms.com/docs/document-locks/): Enable expiring edit leases, control takeover access, and keep optimistic revisions as the final write fence. - [Uploads and media](https://riducms.com/docs/uploads/): Add a media library to a Ridu project, upload files through the admin or SDK, and reference them from content. - [Localize the admin and authoring workflow](https://riducms.com/docs/admin-localization/): Configure interface catalogs, translated labels, RTL, timezones, and a separate content-locale workflow. - [Durable tasks](https://riducms.com/docs/tasks/): Run typed Go work with database-backed leases, retries, cancellation, and bounded retention. - [Generated contracts](https://riducms.com/docs/generated-contracts/): Generate and use Ridu’s manifest, OpenAPI schema, Go models, TypeScript client, and admin registry. - [The Ridu admin](https://riducms.com/docs/admin/): Browse, create, edit, localize, publish, and extend content in Ridu’s embedded admin. - [TypeScript SDK](https://riducms.com/docs/typescript-sdk/): Use Ridu’s generated, Fetch-based client from browsers, server frameworks, and tooling. - [Ridu CLI](https://riducms.com/docs/cli/): Create projects and plugins, generate contracts, run development, manage database migrations, and build releases. - [Testing](https://riducms.com/docs/testing/): Test Ridu configuration, generated contracts, database behavior, HTTP clients, and authoring flows. - [Troubleshooting](https://riducms.com/docs/troubleshooting/): Diagnose common Ridu setup, generation, migration, SDK, auth, and runtime failures by symptom. - [Adapters](https://riducms.com/docs/adapters/): Connect Ridu to databases and object-storage providers without changing CMS behavior. - [Plugins](https://riducms.com/docs/plugins/): Install, build, version, migrate, and test trusted Ridu extensions. - [MongoDB](https://riducms.com/docs/mongodb/): Create or configure a Ridu project for the supported MongoDB replica-set deployment. - [PostgreSQL](https://riducms.com/docs/postgres/): Configure, operate, and test Ridu’s official transactional store. - [SQLite](https://riducms.com/docs/sqlite/): Run Ridu with its official embedded store inside the supported single-host operating envelope. - [Rich text](https://riducms.com/docs/rich-text/): Author portable Lexical documents with bounded validation, embedded references, and safe server-side HTML rendering. - [SEO](https://riducms.com/docs/seo/): Add localized search metadata, draft-aware generators, upload selection, and a live result preview to collections and globals. - [Form Builder](https://riducms.com/docs/form-builder/): Let editors assemble reusable forms, validate and persist submissions, send templated emails, accept uploads, and connect payment callbacks. - [GraphQL](https://riducms.com/docs/graphql/): Add an optional manifest-derived GraphQL endpoint with typed resources, shared authorization, and bounded execution. - [Object storage](https://riducms.com/docs/storage/): Configure local, S3-compatible, or custom storage safely for upload bytes. - [Production](https://riducms.com/docs/production/): Build, configure, deploy, observe, drain, migrate, and recover a Ridu application. - [Migrations](https://riducms.com/docs/migrations/): Create, review, verify, and safely apply database migrations. - [Performance and footprint](https://riducms.com/docs/performance/): Review Ridu’s current runtime benchmark and measure a representative application. - [Prevent abuse](https://riducms.com/docs/preventing-abuse/): Protect a public Ridu API with access rules, authentication limits, request bounds, safe uploads, and edge rate limiting. - [Security model](https://riducms.com/docs/security/): Secure HTTP, authentication, uploads, databases, plugins, and operational access. - [Releases and compatibility](https://riducms.com/docs/releases/): Keep Ridu packages aligned, understand supported environments, and upgrade an application safely. ## Guides - [Move from Payload](https://riducms.com/guides/from-payload/): Translate a Payload project into Ridu config, normalized content, and a rehearsed production cutover. - [Coming from PocketBase](https://riducms.com/guides/from-pocketbase/): Compare Ridu with PocketBase and understand what an evaluation or migration involves. - [Build a custom field](https://riducms.com/guides/custom-fields/): Ship one exact value contract across Go, OpenAPI, TypeScript, and the Svelte admin. - [Add live preview](https://riducms.com/guides/live-preview/): Render access-checked drafts and receive unsaved form updates in a framework-agnostic frontend. ## API reference - [ridu](https://riducms.com/reference/ridu/): The ergonomic application facade for config, startup, and access decisions. - [core](https://riducms.com/reference/core/): Application contracts and the operation runtime behind the root facade. - [field](https://riducms.com/reference/field/): Type-safe field builders and presentation options. Incompatible options fail at Go compile time; semantic issues are reported by ridu.Resolve. - [query](https://riducms.com/reference/query/): Immutable filters, validated document paths, stable sorting, and relationship population controls. - [schema](https://riducms.com/reference/schema/): The immutable generated schema manifest, stable identifiers, and advanced generator/plugin contracts. - [store](https://riducms.com/reference/store/): Advanced adapter contracts for transactional documents, auth, preferences, locks, publishing, uploads, and durable tasks. - [storage](https://riducms.com/reference/storage/): Object-storage contracts used by upload collections. Implement this package only when the official local and S3 backends do not fit. - [migration](https://riducms.com/reference/migration/): Advanced, database-independent vocabulary for immutable and reviewable migration artifacts. - [migration/payload](https://riducms.com/reference/migration-payload/): Optional public import boundary for normalized Payload CMS exports; source-specific database extraction is deliberately out of scope. - [protocol (Go)](https://riducms.com/reference/go-protocol/): Advanced stable REST wire envelopes shared by the HTTP runtime, generators, SDK, admin, and transport tests. - [plugintest](https://riducms.com/reference/plugintest/): Stable backend conformance tests for third-party compiled Ridu plugins. - [postgres](https://riducms.com/reference/postgres/): The official PostgreSQL store, safe development schema sync, and immutable production migration runner. - [sqlite](https://riducms.com/reference/sqlite/): The official embedded SQLite store and its immutable, reversible migration lifecycle. - [mongodb](https://riducms.com/reference/mongodb/): The official replica-set MongoDB store, additive development index synchronization, and immutable forward-only migration lifecycle. - [graphql](https://riducms.com/reference/graphql/): An optional manifest-generated GraphQL transport over Ridu’s operation engine; importing it is what links the GraphQL runtime. - [mcp](https://riducms.com/reference/mcp/): An optional authenticated, read-only Model Context Protocol transport over explicitly selected Ridu content. - [richtext](https://riducms.com/reference/richtext/): A paired, versioned Lexical field with authoring for portable content, references, uploads, and blocks. - [seo](https://riducms.com/reference/seo/): Payload-familiar search metadata fields, authenticated draft-aware generators, and a paired Svelte admin. - [formbuilder](https://riducms.com/reference/formbuilder/): Payload-familiar dynamic form definitions, server-validated submissions, notifications, uploads, and payment callbacks. - [storage/local](https://riducms.com/reference/storage-local/): Durable filesystem object storage for development and single-host deployments. - [storage/s3](https://riducms.com/reference/storage-s3/): Dependency-free S3-compatible object storage with SigV4 requests and signed private reads. - [conformance](https://riducms.com/reference/store-conformance/): Reusable behavioral qualification suites for Ridu store adapters. - [@riducms/sdk](https://riducms.com/reference/sdk/): The generated-contract-aware Fetch client for browser and server applications. - [@riducms/protocol](https://riducms.com/reference/protocol/): Generated wire contracts and runtime guards shared by the SDK and admin. - [@riducms/plugin](https://riducms.com/reference/plugin/): Static Svelte 5 extension contracts for generated admins and plugin packages. - [@riducms/build](https://riducms.com/reference/build/): Build-time Vite, Svelte 5, and UnoCSS conventions for generated admins and plugin libraries. - [@riducms/ui](https://riducms.com/reference/ui/): Shared Svelte 5 interaction primitives and class composition for the admin and static plugins. - [@riducms/plugin-richtext](https://riducms.com/reference/plugin-richtext/): The statically bundled Svelte/Lexical half of the rich-text plugin. - [@riducms/plugin-seo](https://riducms.com/reference/plugin-seo/): The statically bundled Svelte authoring half of the official SEO plugin. - [@riducms/plugin-form-builder](https://riducms.com/reference/plugin-form-builder/): Framework-neutral public form helpers plus a separately exported static admin pairing. - [@riducms/admin](https://riducms.com/reference/admin/): The framework-owned Svelte admin mount contract and public admin client surface. - [@riducms/translations](https://riducms.com/reference/translations/): Typed admin translations, language negotiation, plurals, and Intl formatting. - [@riducms/cli/run](https://riducms.com/reference/cli-launcher/): Programmatic Node launcher for invoking the platform-specific Ridu CLI binary. - [ridu CLI](https://riducms.com/reference/cli/): The implemented project lifecycle: scaffolding, generation, migrations, development, checks, builds, diagnostics, and static plugin management.