-
Notifications
You must be signed in to change notification settings - Fork 6
Home
barakoCMS is a headless CMS for .NET 10: FastEndpoints over Marten and Postgres, shipped as a core API plus optional modules as NuGet packages. This repository is the API, its own surface is Swagger, and the admin console is a separate project.
There is a ready compose in quickstart/.
Prebuilt images, no .NET toolchain, no build step.
git clone https://github.com/BaryoDev/barakoCMS.git
cd barakoCMS/quickstart
cp .env.example .env
# edit .env, at minimum: DB_PASSWORD, JWT_KEY (32+ characters), ADMIN_PASSWORD
docker compose up -d| URL | |
|---|---|
| API | http://localhost:5005 |
| Health | http://localhost:5005/health |
| Swagger |
http://localhost:5005/swagger, once SWAGGER_ENABLED=true
|
Sign in with the ADMIN_USERNAME / ADMIN_PASSWORD you set. Postgres comes up with it on a
persistent volume, and every module is already in the image: each one stays off or on a safe mock
until you supply its keys, so an empty-but-valid .env boots a working CMS.
The full walkthrough, module blocks and going behind a domain, is in the repository:
quickstart/README.md.
Every setting is in Configuration.
The admin console is barakoBrew, its own repository on its
own release cadence. It runs this same API image and puts ghcr.io/baryodev/barako-brew (also
pushed as barako-admin) in front of it. Start there if you want screens instead of Swagger.
barakoBrew 1.5.0 accepts API contract versions 1 to 4 and barakoCMS 4.4.1 answers 4, so the two
pair; barakoBrew's CI runs against API 4.1.0.
- Configuration - environment variables and settings, what each one changes.
- HTTP-surface - the routes, the JSON, the status codes, and what counts as a breaking change to them.
-
Docs - the feature and operations docs that are published here, generated from
docs/in the repository. - barakoCMS 4.0 - what changed in 4.0, the integration builder, capability-based authorization, the split of the console into barakoBrew, known issues, and moving from 3.x.
Not a renderer. barakoCMS renders no pages. barakoPress
is the renderer for barakoCMS sites: pages from blocks, collections and docs trees, cached until the
CMS says otherwise. Or build your own site and read content over the anonymous delivery API
(GET /api/public/{type}), which serves only content types that opted in. The console, barakoBrew,
is in its own repository too.
Not a service. You own it and run it where you choose. Nothing is metered per seat, record or environment. There is no barakoCMS service: you run the process, you own the database, you choose the region, you hold the backups.
Releases
Start here
- Approval by configuration
- Configuring email
- Delivering a client project on barakoCMS
- Deploying barakoCMS on a VM
- Deploying barakoCMS on a managed platform
- Upgrading from 3.x to 4.0
- Your first module
Content
- Content type blueprints
- Choice fields
- Pushing entries to a collection
- Collections filled from outside
- Public delivery API
- Event-sourced content types
- Image variants
- Scheduling publish, unpublish and sensitivity
- SEO fields
- Site settings
- URL redirects
Security and access
- Security and compliance posture
- Scanning uploads for malware
- Where the admin keeps your session, and why
Tenancy
Operations