SleekCMS Documentation

SleekCMS is a hosted headless CMS with an integrated static site builder. You model structured content, create and manage it through a visual editor, and deliver it through a content API or as a fully generated static website — without setting up servers, databases, Git repositories, or build pipelines.

This documentation covers everything from content modeling and the editing experience to template development, API integration, deployment, and site administration.


What Is SleekCMS

SleekCMS is a content management system built around two ideas: structured content modeling and zero-infrastructure publishing.

Structured content modeling means your content is defined by schemas — models with typed fields — rather than freeform pages. A blog post isn't a blob of HTML. It's a model with a title field, an author reference, a publish date, a featured image, and a composable body made of block sections. This structure gives you a consistent editing interface, a predictable API shape, and content that's ready for any frontend.

Zero-infrastructure publishing means you don't manage servers, databases, deployment pipelines, or Git repositories. SleekCMS hosts the content editor, the content API, and the static site builder. You create content in the browser, and it's immediately available through the API or as a generated static site — deployable to Netlify, Vercel, Cloudflare Pages, or any hosting provider that serves static files.

Headless CMS + Static Site Builder

Most headless CMS platforms give you a content API and leave the rendering to you. SleekCMS does that too — the content API delivers your structured content as JSON to any frontend framework. But it also includes an integrated site builder that turns your content and EJS templates into a complete static website, entirely in the browser. No build servers, no CI pipelines, no local development environment required.

You can use SleekCMS as a pure headless CMS with React, Next.js, Astro, SvelteKit, or any other framework. Or you can use the built-in site builder to create and deploy sites without writing a frontend application. Or both — the content API and the site builder work from the same content, so you can build a marketing site with the site builder and a mobile app with the API, all from a single content source.


Who It's For

SleekCMS serves three audiences that often work together:

Developers build content models, write templates and frontend code, configure API integrations, and set up deployment workflows. The platform gives you typed fields, a JSON content API, a JavaScript/TypeScript client library, EJS templates for static generation, and zero-setup Tailwind CSS.

Content editors create and manage content through a visual editor with live preview. They compose pages from pre-built block sections, manage entries like authors and categories, upload and organize media, and publish content — all without touching code.

Site administrators configure content models and field schemas, manage team members and roles, set up environments and publishing workflows, and handle deployment settings.


Core Use Cases

Marketing websites and landing pages — Model page types with composable block sections. Content teams build and iterate on pages visually while developers maintain design consistency through block models and templates.

Blogs and editorial publishing — Model blog posts as page collections with author references, categories, publish dates, and rich text or composable body sections. Use the content API to power a custom frontend or the site builder for a static blog.

Multi-page sites with shared content — Entries hold reusable data like navigation, footer content, team members, testimonials, and site settings. Reference them from any page. Update once, reflected everywhere.

Design systems and component libraries — Block models act as content components with defined fields and templates. Build a library of hero sections, feature grids, CTA banners, pricing tables, and testimonial carousels. Editors compose pages from these components.

Headless content for apps — Use the content API to deliver structured content to React, Vue, Svelte, mobile apps, or any frontend. The JavaScript/TypeScript client provides sync and async access patterns for SSG and SSR workflows.


Key Concepts

SleekCMS is built on four primitives that work together to structure all content on your site.

Models

Models are schemas that define the structure of your content. Every piece of content in SleekCMS is an instance of a model, and the model determines what fields are available, what the editor looks like, and what shape the API response takes. There are three types of models:

Page models define routable content — content with a URL. A homepage, a blog post, a product page, a contact page. Page models can be static (one page at a fixed path) or collections (many pages with a shared path prefix and individual slugs). Pages are the content your visitors navigate to directly.

Entry models define structured, non-routable content — content without a URL. Authors, categories, site settings, navigation links, footer content. Entries hold reusable data that pages and other entries reference. Update an author's bio in one place and it's reflected on every blog post that references them.

Block models define reusable, composable content components — self-contained sections like hero banners, feature grids, CTA cards, and testimonial carousels. Blocks are embedded within pages and entries through block fields. Each block model has its own fields and its own template, and a single block model can be used across any number of pages and entries.

Page ModelsEntry ModelsBlock Models

Fields

Fields are the building blocks of every model. When you add a field to a model, you're defining a single piece of structured data — a title, an image, a date, a reference to another entry, a composable stack of blocks. SleekCMS provides textual fields (text, markdown, rich text, number, boolean), choice fields (dropdown, color), temporal fields (date, date time), media fields (image, video), data fields (JSON, code, location, data table), relational fields (reference, link), and structural fields (group, collection, block, dynamic blocks).

Content Field Types

Content

Content is the data created from models. When an editor creates a blog post, they're creating an instance of the blog post page model and filling in its fields. Content is managed through the visual editor, which provides field-specific input controls, live preview, draft states, and publishing workflows.

Content Editing

Templates

Templates define how content renders to HTML in the site builder. Each model can be bound to an EJS template. When the site builder compiles your site, it processes each content record through its model's template and produces static HTML. Templates have access to the current record's data through the item variable, plus the full site content through global accessors and helper methods.

Site BuilderTemplate Context and Data Access


How It Works

The core workflow in SleekCMS follows three steps:

1. Model your content — Define page models, entry models, and block models with the fields your content requires. This creates the editing interface and the API shape simultaneously.

2. Create content — Editors fill in fields, compose pages from block sections, reference shared entries, and upload media. The visual editor with live preview lets content teams work independently of developers.

3. Deliver content — Publish through the content API for headless frontend integration, or generate a static site with the built-in site builder and deploy it to any hosting provider.

Model (schema)  →  Content (data)  →  Deliver (API or static site)

Documentation Map

Getting Started

  • Getting Started — Create your first project, set up models, create content, and publish.

Content Modeling

  • Content Modeling — The architecture of structured content: pages, entries, blocks, and how they connect.
  • Page Models — Routable content with URL paths, static pages, and slug-based collections.
  • Entry Models — Non-routable structured data for reusable content like authors, categories, and settings.
  • Block Models — Reusable, composable content components for dynamic page sections.
  • Option Sets and Lists — Key-value pairs that power dropdown fields and lightweight taxonomy.
  • Content Field Types — The full set of field types: textual, media, relational, structural.
  • Group Fields — Organizing related fields into non-repeatable containers with column layouts.
  • Collection Fields — Repeatable inline structures for variable-length lists.
  • Block Fields — Single block and dynamic block fields for embedding block instances.
  • Dynamic Blocks — Composable page layouts, the editor experience, and layout governance.

Content Editing

Media

Site Builder

Publishing and API

Settings and Administration

Organization

Client Libraries

  • @sleekcms/client — JavaScript/TypeScript client for sync and async content access.
  • @sleekcms/react — React hooks for fetching content in client-side applications.