explaingit

crumbleerp/clarity

Analysis updated 2026-05-18

6TypeScriptAudience · developerComplexity · 4/5LicenseSetup · hard

TLDR

An open-source, self-hosted CMS that replaces Sanity by storing your content in your own PostgreSQL database and answering the same GROQ queries Sanity uses.

Mindmap

mindmap
  root((Clarity CMS))
    What It Does
      Stores content in Postgres
      Accepts GROQ queries
      Replaces Sanity API
    Dashboard
      Schema editor
      Document editor
      Media library
    Tech Stack
      TypeScript
      PostgreSQL
      Docker
    Use Cases
      Blog CMS
      Sanity migration
      App content layer
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run your own CMS for a blog or product site without paying for a cloud CMS subscription.

USE CASE 2

Migrate an existing Sanity project to a self-hosted setup using the one-click import tool.

USE CASE 3

Fetch and update structured content from a Next.js or SvelteKit app using GROQ queries and the JavaScript client.

What is it built with?

TypeScriptPostgreSQLDockerGROQNuxtNode.js

How does it compare?

crumbleerp/clarityatomicstrata/atomicmemoryazerdsq131/mcpm
Stars666
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyhardmoderateeasy
Complexity4/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires Docker and a running PostgreSQL instance, S3-compatible storage is optional but needed for media uploads.

MIT license, use freely in any project, including commercial ones, as long as you keep the copyright notice.

In plain English

Clarity is an open-source content management system (CMS) you can run on your own server instead of relying on a third-party cloud service. It is designed to work as a drop-in replacement for Sanity CMS, meaning projects already built around Sanity's API can switch to Clarity with minimal code changes. At its core, Clarity stores all your content in a PostgreSQL database that you control. You query that content using GROQ, the same query language Sanity uses, so blog posts, product pages, images, or any other structured data can be fetched with familiar syntax. A built-in web dashboard lets you define your content schemas (the shapes of your documents), edit individual documents, browse your media library, and run test queries directly in the browser. Getting started involves Docker. You download a Docker Compose file, fill in a few environment variables such as your database credentials, a session secret, and optionally an S3-compatible storage endpoint for images, then run one command to start the service. Once running, you log in to the dashboard and can immediately begin creating content. If you are migrating from Sanity, there is a one-click import tool in the settings that pulls all your existing documents, schemas, and media files into Clarity. To read content from your application, you install the official JavaScript client package and point it at your Clarity server. The client works with Next.js, Nuxt, SvelteKit, Astro, or plain Node.js. You write GROQ queries to filter, sort, and shape the data you want, and the client fetches it over HTTP. The API surface closely follows Sanity's own endpoints, so much of the same client code will work without changes. Clarity is in alpha, meaning it is actively being developed and some features or APIs may change. It is released under the MIT license, which allows free use in personal and commercial projects.

Copy-paste prompts

Prompt 1
I want to set up Clarity CMS with Docker Compose on a VPS. Show me the exact docker-compose.yaml I need and which environment variables are required versus optional.
Prompt 2
Using the @crumbleerp/clarity JavaScript client, write a GROQ query that fetches all published blog posts ordered by date for a Next.js app pointed at my Clarity instance.
Prompt 3
I have an existing Sanity project. Walk me through importing all my documents, schemas, and media assets into a fresh Clarity CMS installation using the Settings import tool.
Prompt 4
Define a blog post schema in Clarity with a title, slug, markdown body, published date, and an author reference field using the JavaScript defineType and defineField API.

Frequently asked questions

What is clarity?

An open-source, self-hosted CMS that replaces Sanity by storing your content in your own PostgreSQL database and answering the same GROQ queries Sanity uses.

What language is clarity written in?

Mainly TypeScript. The stack also includes TypeScript, PostgreSQL, Docker.

What license does clarity use?

MIT license, use freely in any project, including commercial ones, as long as you keep the copyright notice.

How hard is clarity to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is clarity for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub crumbleerp on gitmyhub

Verify against the repo before relying on details.