cms is now the authoring source for the bn chrome (head/toolbar/engagement); this repo carries a mechanically-synced copy solely for guest-side plugin templates (cms `make sync-templates`, drift gated by check-safety check 31). head.templ picks up everything it had drifted behind on (RFG-parity favicon head, analytics/web-vitals beacons, custom-scripts placement, bnApplyTheme) and is now SDK-clean: asset versioning goes through the new bn.VersionedAssetURL hook (identity default; the CMS host wires it to its internal assets registry). HeadData is shape-compatible with existing plugin usage; BrandingData/SiteSettingsData internals changed — plugins see that at compile time on their next core bump. Spec: cms docs/superpowers/specs/2026-07-07-bn-chrome-single-source-design.md Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
BlockNinja Core
Shared Go code between the BlockNinja CMS and the orchestrator: types, interfaces, and utilities both need.
Not a plugin SDK. Core is purely for sharing code between the CMS and the orchestrator. Plugins must not import
block/core— in the wasm-plugin era they are standalone artifacts built against the wasm ABI. (Core previously served as the plugin SDK; that role is gone.)
Package Structure
| Package | Purpose |
|---|---|
plugin/ |
PluginRegistration, CoreServices, RegisterFunc |
blocks/ |
BlockMeta, BlockFunc, BlockRegistry interface, BlockContext |
blocks/builtin/ |
Reusable block implementations (HTMLBlock) |
templates/ |
TemplateRegistry interface |
templates/bn/ |
Shared templ components (head, engagement, toolbar) |
auth/ |
Claims types, context extractors |
content/ |
Content access interface |
settings/ |
Settings access interface |
gating/ |
Access gating evaluation |
crypto/ |
Encrypt/Decrypt interface |
render/ |
Rich text rendering utilities |
video/ |
Video embed URL parsing |
ai/ |
AI tool registry interface and types |
rbac/ |
Role type definition |
Usage
Consumers are the CMS and the orchestrator only.
import "git.dev.alexdunmow.com/block/core/plugin"
Description
Languages
Go
83.5%
templ
15.5%
Makefile
1%