Release and Open Core
Note
Public releases are generated from the open-core boundary, not from the private monorepo tree. The export includes the runtime package, open registry source, docs and governance files.
Open-core boundary
Brok is an open-core project. The runtime package, open registry, open components, open blocks, docs and governance files are MIT licensed. Pro registry items are licensed separately and are not part of the public open-core export.
Open core (MIT)
packages/uiruntime and public CLI commands.- Open registry source under
registry/open. - Open docs, tests, release policy and contribution docs.
- MIT license terms in the repository
LICENSEfile.
Pro (commercial)
- Paid blocks, themes and advanced layouts.
- Private Pro registry source and built Pro registry output.
- License-server implementation and hosted entitlement checks.
- Items marked with
license: "pro".
Copied source is yours in both tiers; Pro items additionally follow the license terms.
Pre-release checks
nvm use
scripts/check.sh full
tooling/open-source-core/export.sh build/open-core
The full gate runs app commands through the Docker stack. Maintainers should follow the canonical publishing runbook for signing, mirror tags, package channels, deployment, and external verification.
Versioning
- Patch releases fix bugs, docs and compatible component behavior.
- Minor releases add compatible commands, components or blocks.
- Major releases cover breaking CLI, path or component API changes.
- Item maturity is
experimental,incubating,stable, ordeprecated. - Breaking item updates require a major item version and a structured
migrations[]entry withbreaking: true; consumers opt in withui:update --major. - Experimental and incubating items can break after a version increase. Their install and update commands require
--accept-unstable.
Compatibility contract
Every stable release publishes its Laravel, Livewire, Tailwind CSS, PHP, Alpine.js, browser, and foundation ranges in the changelog. Dropping a supported range is breaking.