# Localess - Foundation: Concepts and features - **Introduction** - [Overview](/docs): Open-source headless CMS with translation management, a Visual Editor, and a REST API — schema-driven, Firebase-hosted, and ready for any frontend. - [Getting Started](/docs/getting-started): Getting started with Localess; deploy, create a space, define content, and connect to your frontend. - **Features** - [Localization](/docs/localization): Localess provides two distinct localization capabilities — Translation Manager for UI strings and Content Translation for structured multilingual content. - [Translations](/docs/translations): Manage all your application's translation strings in one place — across every locale, with team collaboration and auto-translation support. - [Content](/docs/content): Author and manage structured content documents organised in folders — each document follows a Schema and is available via the API in one or more locales. - Schemas - [Overview](/docs/schemas): Schemas define the structure of your content — the fields editors fill in and the shape of the data returned by the API. - [Text](/docs/schemas/text): Stores a single-line string. Use it for titles, headlines, or any short text that fits on one line. - [Text Area](/docs/schemas/text-area): Stores a multi-line plain text string. Use it for summaries, descriptions, or any content that spans multiple lines but does not need formatting. - [Number](/docs/schemas/number): Stores an integer or decimal number. Use it for quantities, prices, ratings, or any numeric value. - [Boolean](/docs/schemas/boolean): Stores true or false. - [Color](/docs/schemas/color): Stores a color as a hex string in - [Date](/docs/schemas/date): Stores a calendar date as an ISO-8601 string in YYYY-MM-DD format. - [Date Time](/docs/schemas/date-time): Stores a date and time as an ISO-8601 string in YYYY-MM-DDThh:mm format. - [Link](/docs/schemas/link): Stores either an external URL or an internal content reference, with optional target. - [Markdown](/docs/schemas/markdown): Stores a multi-line Markdown string. Use it for articles, long descriptions, and any content where editors need basic formatting via Markdown syntax. For one... - [Rich Text](/docs/schemas/rich-text): Stores structured formatted text as a Tiptap JSON document. Supports headings, bold, italic, lists, links, and code blocks. - [Asset (One)](/docs/schemas/asset): References a single asset (image, file, etc.) uploaded to the space. - [Assets (Multiple)](/docs/schemas/assets): References a list of assets uploaded to the space. - [Option (One)](/docs/schemas/option): Stores a single selected value from a predefined list. The list can be defined inline or sourced from an Enum schema. - [Options (Multiple)](/docs/schemas/options): Stores multiple selected values from a predefined list. The list can be defined inline or sourced from an Enum schema. - [Reference (One)](/docs/schemas/reference): Stores a reference to a single content document in the space. Resolved to the full document when fetched with resolveReference enabled. - [References (Multiple)](/docs/schemas/references): Stores references to multiple content documents in the space. Resolved to full document objects when fetched with resolveReference enabled. - [Schema (One)](/docs/schemas/schema): Embeds a single Node schema block inline. Use it for optional or singular nested components such as a CTA, a banner, or an author card. - [Schemas (Multiple)](/docs/schemas/schemas): Embeds a list of Node schema blocks inline. Use it for repeatable components such as page sections, button groups, or feature lists. - [Assets](/docs/assets): Upload and organise images, videos, and other files — then reference them from your content schemas. - [Draft & Publish](/docs/draft-publish): Nothing goes live until you say so. Localess keeps every change in Draft until you explicitly promote it to Published — giving your team a safe staging buffer built into the CMS. - [Visual Editor](/docs/visual-editor): Preview and edit content in real time — see every change reflected instantly in your running application without leaving the Localess UI. - [Webhooks](/docs/webhooks): Receive real-time HTTP notifications when content, translations, or assets change in Localess — and trigger downstream systems automatically. - Frameworks: Integration guides - **Frameworks** - [Overview](/docs/frameworks): Pick your framework to get a complete Localess integration guide, from install through live editing. - Angular: Angular, client-side or SSR - [Getting Started](/docs/frameworks/angular): Angular SDK for Localess — content delivery, rich text rendering, asset management, dynamic component rendering, and Visual Editor integration for client-side and server-side rendered Angular applications. - [Content](/docs/frameworks/angular/content): Fetch content with TransferState hydration and render it dynamically by schema with the Angular SDK for Localess. - [Visual Editor](/docs/frameworks/angular/visual-editor): Subscribe to Localess Visual Editor live-editing events with the Angular SDK for Localess. - [Reference](/docs/frameworks/angular/reference): Asset and translation services, directives, pipes, image optimization, and the full API reference for the Angular SDK for Localess. - Astro: Astro, static or server output - [Getting Started](/docs/frameworks/astro): Astro SDK for Localess — dynamic component rendering by content schema, rich text rendering, asset management, and Visual Editor integration for static and server-rendered Astro projects. - [Content](/docs/frameworks/astro/content): Fetch and render content dynamically by schema with the Astro SDK for Localess, under both static and server output. - [Visual Editor](/docs/frameworks/astro/visual-editor): Reload-based and SSR live-preview Visual Editor sync tiers for the Astro SDK for Localess. - [Reference](/docs/frameworks/astro/reference): Assets, rich text, links, error handling, and the full API reference for the Astro SDK for Localess. - Next.js: Next.js — App Router and static export - [Getting Started](/docs/frameworks/next): Use Localess in a Next.js app — App Router with React Server Components, or a static export. - [Content](/docs/frameworks/next/content): Fetch content and render it dynamically by schema in a Next.js app, across server and client rendering. - [Visual Editor](/docs/frameworks/next/visual-editor): Live-editing patterns for Next.js — LocalessDocument, the useLocaless hook, and how the sync script gets loaded. - [Reference](/docs/frameworks/next/reference): Assets, rich text, links, error handling, and the export reference for Localess in Next.js. - Node.js: No framework — the TypeScript client - [Getting Started](/docs/frameworks/node): Use Localess without a frontend framework — a type-safe TypeScript client for fetching content, translations, and assets from any Node.js server or script. - [Content](/docs/frameworks/node/content): Fetch content, links, and translations with the @localess/client TypeScript SDK. - [Visual Editor](/docs/frameworks/node/visual-editor): Enable and subscribe to Localess Visual Editor live-editing events with the @localess/client TypeScript SDK. - [Reference](/docs/frameworks/node/reference): Assets, error handling, caching, and the full type and utility-function reference for @localess/client. - Nuxt: Nuxt 4 module - [Getting Started](/docs/frameworks/nuxt): Nuxt module for Localess — one config block for content delivery, component auto-registration, a server-only client for draft content, and Visual Editor integration. - [Content](/docs/frameworks/nuxt/content): Fetch content server-side with the secret token or client-side with the public one, and render it by schema, in a Nuxt app. - [Visual Editor](/docs/frameworks/nuxt/visual-editor): Live-editing in a Nuxt app — enableSync, LocalessDocument, the useLocalessSync composable, and marking elements editable. - [Reference](/docs/frameworks/nuxt/reference): Assets, rich text, links, error handling, and the full module and runtime reference for the Nuxt module for Localess. - React Router: React Router v7 framework mode - [Getting Started](/docs/frameworks/react-router): Use Localess in a React Router v7 framework-mode app, in both server-rendered and prerendered output. - [Content](/docs/frameworks/react-router/content): Fetch content and render it dynamically by schema in a React Router app, across server and client rendering. - [Visual Editor](/docs/frameworks/react-router/visual-editor): Live-editing patterns for React Router — LocalessDocument, the useLocaless hook, and how the sync script gets loaded. - [Reference](/docs/frameworks/react-router/reference): Assets, rich text, links, error handling, and the export reference for Localess in React Router. - SvelteKit: SvelteKit with server-side loading - [Getting Started](/docs/frameworks/sveltekit): Use Localess in a SvelteKit app — server-side loading with a secret token, schema-driven rendering, and Visual Editor live sync. - [Content](/docs/frameworks/sveltekit/content): Fetch content and render it dynamically by schema in a SvelteKit app, in both server-loaded and client-side flows. - [Visual Editor](/docs/frameworks/sveltekit/visual-editor): Live-editing patterns for SvelteKit — LocalessDocument, the localessSync store, and how the sync script gets loaded. - [Reference](/docs/frameworks/sveltekit/reference): Assets, rich text, links, error handling, and the full export reference for Localess in SvelteKit. - TanStack Start: Full-stack React on TanStack Router - [Getting Started](/docs/frameworks/tanstack-start): Use Localess in a TanStack Start app, in both server-rendered and prerendered output. - [Content](/docs/frameworks/tanstack-start/content): Fetch content and render it dynamically by schema in a TanStack Start app, across server and client rendering. - [Visual Editor](/docs/frameworks/tanstack-start/visual-editor): Live-editing patterns for TanStack Start — LocalessDocument, the useLocaless hook, and how the sync script gets loaded. - [Reference](/docs/frameworks/tanstack-start/reference): Assets, rich text, links, error handling, and the export reference for Localess in TanStack Start. - **Features** - [Schema as Code](/docs/frameworks/schema-as-code): Define content schemas in TypeScript with @localess/schema and infer content types from them without a codegen step. - [Image Transforms](/docs/frameworks/image-transforms): Resize, reformat, and optimize images on demand by appending URL parameters to any Localess asset URL — no extra service required. - CLI: Translations, types and schemas - [Get Started](/docs/cli): Command-line interface for Localess — authenticate with your instance, sync translations and schemas, and generate TypeScript type definitions from your content schemas. - [Login](/docs/cli/login): Authenticate with your Localess instance and store credentials securely. - [Logout](/docs/cli/logout): Clear stored credentials from your local Localess configuration. - [Schema](/docs/cli/schema): Define content schemas in TypeScript and sync them with your Localess space. - [Translations](/docs/cli/translations): Push, pull, and diff translation files between your local project and Localess. - [Types](/docs/cli/types): Generate TypeScript type definitions from your Localess content schemas. - Setup: Run Localess yourself - [Overview](/docs/setup): Choose how to run Localess — Docker to try it, local emulators to develop against it, or Firebase to run it in production. - [Docker](/docs/setup/docker): Run Localess locally using Docker Compose — no cloud account required. - [Local Run](/docs/setup/local): Run Localess locally for development or to try it out without any cloud infrastructure. - [Firebase](/docs/setup/firebase): Deploy Localess to production on Firebase. - API Reference: REST endpoints - [Overview](/docs/openapi): Authentication, base URLs, and error codes for the Localess REST API. - **Translations** - [Get Translations](/docs/openapi/translations/getTranslations): The endpoint allows you to retrieve all translations by locale. In case Locale is not present in the Localess, it will return the default locale translations. In case cache version is not present, it will redirect to the latest version. - **Contents** - [Get Links](/docs/openapi/contents/getContentLinks): The endpoint allows you to retrieve all Content summery metadata mainly used to recreate content tree. In case cache version is not present, it will redirect to the latest version. - [Get Content by Slug](/docs/openapi/contents/getContentBySlug): The endpoint allows you to retrieve a specific Content by the content full slug. In case cache version is not present, it will redirect to the latest version. - [Get Content By ID](/docs/openapi/contents/getContentById): The endpoint allows you to retrieve a specific Content by Unique identifier for the Content object. In case cache version is not present, it will redirect to the latest version. - **Assets** - [Get Asset By ID](/docs/openapi/assets/getAssetById): The endpoint allows you to retrieve a specific Asset by Unique identifier for the Asset object.