Community

40+ backends, two contracts, one content API.

The storage layer is where Laika is most extensible. Every tile below is a real StorageRepository that ships today: buckets, SQL, Git, document stores, search indexes, Notion, a graph database. Adapters are small; an author can add the next one.

Repository laikacms/laikacmsContributing Set up the workspace, send a PRReleases Changesets, shipped in the openIssues Bugs, ideas, discussions

First-party

Shipped in the box, no extra package: the repositories the core is built around.

Filesystemlaikacms/storage-fs
Cloudflare R2laikacms/storage-r2
WebDAVlaikacms/storage-webdav
JSON:API proxylaikacms/storage-jsonapi-proxy
Drizzle (SQL)laikacms/storage-drizzle

SQL databasesone adapter · laikacms/storage-drizzle

A single Drizzle-backed repository reaches every SQL dialect Drizzle speaks: eight engines, one line of config.

PostgreSQLpg · postgres.js
MySQLmysql2
SQLitebetter-sqlite3 · bun
Turso / libSQL@libsql/client
Cloudflare D1drizzle-orm/d1
Supabasepostgres-js
PlanetScaledrizzle-orm/planetscale
Neon@neondatabase/serverless

Object stores

Buckets and blob storage: content lives as objects, served at the edge or the origin.

AWS S3@laikacms/aws
Azure Blob@laikacms/azure
Backblaze B2@laikacms/backblaze
Vercel Blob@laikacms/vercel

NoSQL & multi-model

Document, columnar and multi-model databases, each with a first-class repository.

MongoDB@laikacms/mongodb
CouchDB@laikacms/couchdb
Firestore@laikacms/firestore
Convex@laikacms/convex
SurrealDB@laikacms/surrealdb
ArangoDB@laikacms/arangodb
Gel@laikacms/gel
ClickHouse@laikacms/clickhouse

Key-value, graph & search

Edges, keys and indexes: Laika's repository contract doesn't care what shape your store is.

Neo4j@laikacms/neo4j
etcd@laikacms/etcd
Upstash@laikacms/upstash
Algolia@laikacms/algolia
MeiliSearch@laikacms/meilisearch
InfluxDB@laikacms/influxdb

Git platforms

Treat a repository as your content store: every save is a commit, every change a diff.

GitHub@laikacms/github
GitLab@laikacms/gitlab
Bitbucket@laikacms/bitbucket
Gist@laikacms/gist

Headless CMSes

Already invested in another CMS? Point Laika at it and keep one content API in front.

Contentful@laikacms/contentful
Sanity@laikacms/sanity
Hygraph@laikacms/hygraph
PocketBase@laikacms/pocketbase
Airtable@laikacms/airtable

Collaboration tools

Where teams already write: read and write content straight from the tools they live in.

Notion@laikacms/notion
Dropbox@laikacms/dropbox
Google Drive@laikacms/google
OneDrive@laikacms/microsoft
Trello@laikacms/trello

Decentralized & directories

Content-addressed networks, the social web, and even LDAP. The contract is the contract.

IPFS / Pinata@laikacms/pinata
Solid@laikacms/solid
AT Protocol@laikacms/atproto
LDAP@laikacms/ldap

Assetsa second contract · AssetsRepository

Two contracts, same shape. Pair a content store with an asset store (bytes, transforms and URLs) on the backend you already use.

Cloudinary@laikacms/cloudinary
Cloudflare Images@laikacms/cloudflare
S3 assets@laikacms/aws
R2 assetslaikacms/storage-r2
Obsidian vault@laikacms/obsidian

Serializersthe on-disk format

Store content as whatever reads best in a diff, independent of the backend.

JSONstorage-serializers-json
YAMLstorage-serializers-yaml
Markdownstorage-serializers-markdown
Rawstorage-serializers-raw

Adapters are small. Write one for your store ↗

Get involved