Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cms Framework Laravel Package

artisanpack-ui/cms-framework

A modular CMS framework for Laravel that provides the building blocks for content-driven applications, including admin UI components, content management scaffolding, and customizable backend tooling to speed up development.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for editorial/CMS surfaces. This release is almost entirely compatibility and correctness work — WordPress-style preset class names, theme.json template-part areas, block-fork selector parity — which is exactly the long tail a product team would otherwise fund for a year. Adopting the package buys that tail instead of building it.
  • Roadmap: theme-agnostic design tokens. The GlobalStylesEmitter fixes mean a design system authored in theme.json (font sizes, colors, gradients, font families, per-block styles) now actually reaches the canvas for letter–digit slugs (h1–h6, gray900) and for forked blocks. Product decision it unlocks: ship one token set that renders consistently in the editor and on the front end, without a designer hand-maintaining CSS.
  • Roadmap: multi-loop, independently paginated page layouts. query-{queryId}-page plus include/rand ordering support means landing pages, archives, and "related content" modules can compose multiple loops on one template without pagination collisions. This removes a real ceiling on page-builder layouts.
  • Roadmap: theme-shipped navigation overlays. Template-file parts now inherit area from theme.json, so a navigation-overlay part works on first render rather than only after a round-trip through the Site Editor. That turns "mobile menu ships with the theme" from a support ticket into a feature.
  • Feature quality: record-scoped post blocks. post-title, post-excerpt, post-terms inside a record's own content now resolve to that record, with recursion guards for post-content and self-listing loops. This is the difference between "content editors can build detail pages" and "they can't."
  • Security posture / content governance. Query loops now default to published-only across posts, pages, and custom types, and status block attributes are explicitly treated as untrusted — with resolveTrusted() as the opt-in for authorized hosts. This is a default-safe decision we can point to in a security review rather than a per-project hardening task.
  • Upgrade decision: low-risk, high-value patch. All six items are fixes; no deprecations or API removals. Two caveats for planning: behavioral change (see below) and emitter cache keys bumped to v12/v13, so plan a cache warm/flush on deploy.

When to Consider This Package

Consider it when:

  • You are building a content-managed site or editorial product on Laravel and want WordPress-familiar block theming and theme.json semantics without running WordPress.
  • Design tokens and per-block styles need to be authored once and honored in both the editor canvas and the rendered output — including preset slugs containing digits.
  • Your layouts require more than one content loop per page with independent pagination, or loops with explicit ordering (include, rand).
  • You ship themes with template parts (headers, footers, mobile navigation overlays) as files rather than as editor-saved artifacts.
  • You need a published-only-by-default content surface with an explicit, auditable escape hatch for privileged views.

Look elsewhere or proceed with care when:

  • You currently rely on query loops surfacing drafts, pending, or private records. This release makes published-only the default for pages and custom types, and ignores status block attributes. Any existing template that depended on the old behavior needs QueryRuntime::resolveTrusted() wired into an authorized path, or it will silently lose rows. Treat this as the one genuine migration item.
  • You are not on a block/theme.json-shaped theming model — the package's value concentrates in that paradigm, and its recent releases are almost entirely invested there.
  • You need a full editorial workflow product (scheduling UI, multi-stage review, localization pipelines) rather than the rendering substrate for one.
  • You maintain heavy custom block namespaces outside core/* and artisanpack/*; selector emission for other namespaces is explicitly unchanged, so verify your styles still apply.

How to Pitch It (Stakeholders)

To executives: This is a maintenance release on the CMS framework, and the headline is that it closes the gap between what designers configure and what the site actually renders. Preset typography and color classes for digit-bearing slugs (h1–h6, gray900) now apply correctly, forked blocks pick up their styles, and theme-shipped navigation overlays work on first load instead of requiring a manual editor save. In product terms: fewer "the design doesn't match" defects, and page templates can now host multiple independently paginated content loops — a capability we'd otherwise have to build. There are no breaking API changes; the one behavioral change is that content loops now default to published-only, which is the safer default and matches what a reader-facing site should do.

To engineering: Six fixes, no deprecations, no removals. The two that need attention at deploy time are (1) QueryRuntime::resolve() now filters pages and custom types to published and ignores status block attributes — audit any template that expected drafts in a loop and route it through the new resolveTrusted() inside an already-authorized request; and (2) GlobalStylesEmitter cache keys moved to v12 and v13, so flush and warm the emitter cache as part of the rollout. The remaining changes are additive correctness work: WordPress kebab-case preset class aliasing, dual selectors for artisanpack/* block forks, entity passes running inside HasRenderedBlockContent::renderContent() with recursion guards, theme-file template parts reading area from theme.json, and per-loop pagination via query-{queryId}-page.

Recommendation: Adopt. Upgrade on the normal patch cadence, ship the cache flush alongside it, and give the published-only default one focused QA pass across archive, search, and related-content templates before it reaches production.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource