Skip to content

Theme Blog

This page is generated from package source documentation in the Capell packages repository and the checked-in manifest. Source documentation is not distribution status. Before running a Composer command, verify that the exact package and compatible 1.x release are available through public Packagist or the authenticated marketplace account.

FieldValue
Composer packagecapell-app/theme-blog
Package slugtheme-blog
Product groupCapell Themes
Tierpremium
Bundlethemes
Runtime contextsfrontend
Capell version^1.0
Source repositorycapell-app/packages
Source pathpackages/theme-blog
Docs sourcepackages/theme-blog/docs
Manifestcapell.json

Theme Blog is an Available, No schema impact Capell theme in the Capell Themes product group. It ships as capell-app/theme-blog and extends these surfaces: frontend.

Theme Blog provides a reading-first Blade presentation with serif typography, publication page patterns, editorial sections, and a focused content measure.

Admins select Blog through theme management, preview it, and adjust shared theme settings. Public pages use its editorial presets and package-owned publication widgets.

Evidence: src/BlogThemeServiceProvider.php, src/Support/Demo/BlogDemoContent.php, tests/Unit/BlogThemeDefinitionTest.php, capell.json, src/Manifest/ThemeManagementPageContribution.php, docs/overview.admin.md.

Status details:

  • Status: Available
  • Tier: premium
  • Bundle: themes
  • Composer package: capell-app/theme-blog
  • Namespace: Capell\ThemeBlog
  • Theme key: blog

For developers: The provider extends the Foundation default theme and registers Blog definitions, presets, assets, and layout-widget renderables through shared registries.

For teams: Writers and publication teams get a consistent long-form reading layout while keeping text and images in normal Capell content records.

Evidence: src/BlogThemeServiceProvider.php, tests/Unit/BlogThemeDefinitionTest.php, tests/Unit/PublicOutputSafetyTest.php, docs/overview.admin.md, src/Support/Demo/BlogDemoContent.php.

Screenshot contract: docs/screenshots.json.

Blog Homepage

Blog Directory

Desktop, tablet, and mobile variants remain defined in the screenshot contract; this list groups them by workflow.

  • Blog Homepage (frontend, required).
  • Blog Directory (frontend, required).
  • Blog Detail Article (frontend, required).
  • Blog Contact (frontend, optional).
  • Blog Empty State (frontend, required).
  • Blog Page Not Found (frontend, required).
  • Blog Call To Action (frontend, required).
  • Service providers: Capell\ThemeBlog\BlogThemeServiceProvider.
  • Actions: InstallBlogThemeDemoAction.
  • Command signatures: capell:theme-blog-demo.
  • Console command classes: DemoCommand.
  • Manifest contributions: admin-page: Capell\ThemeBlog\Manifest\ThemeManagementPageContribution.
  • Health checks: Capell\ThemeBlog\Health\ThemeBlogHealthCheck.
  • Blade views: packages/theme-blog/resources/views/page.blade.php, packages/theme-blog/resources/views/sections/author-profiles--bibliography.blade.php, packages/theme-blog/resources/views/sections/author-profiles.blade.php, packages/theme-blog/resources/views/sections/content-listing.blade.php, packages/theme-blog/resources/views/sections/contextual-glossary--compact.blade.php, packages/theme-blog/resources/views/sections/contextual-glossary.blade.php, packages/theme-blog/resources/views/sections/cta.blade.php, packages/theme-blog/resources/views/sections/editorial-statement.blade.php, packages/theme-blog/resources/views/sections/essay-index--marginalia.blade.php, packages/theme-blog/resources/views/sections/essay-index.blade.php, packages/theme-blog/resources/views/sections/features.blade.php, packages/theme-blog/resources/views/sections/hero.blade.php, and 12 more.
  • Cache tags: theme-blog.

This theme has no schema impact. It relies on core Capell site, page, locale, and theme records instead of declaring package-owned tables.

  • Required packages: capell-app/core, capell-app/theme-foundation, capell-app/frontend.
  • Admin navigation: declares admin-page: ThemeManagementPageContribution; each Filament page or resource controls its own navigation visibility.
  • Admin/editor extensions: none declared.
  • Permissions: none declared in capell.json.
  • Public routes: none declared.
  • Database changes: no package migrations declared.
  • Config: no package config files.
  • Settings: no package settings declared.
  • Queues or schedules: none declared.
  • Cache tags: theme-blog.
  • Commands: capell:theme-blog-demo.
  • Keep required Capell packages on compatible v4 releases: capell-app/core, capell-app/theme-foundation, capell-app/frontend.
  • Keep public Blade and cached HTML free of authoring markers, model IDs, permissions, signed editor URLs, and lazy database queries.
  • Custom write integrations must preserve invalidation for theme-blog cache tags.
SymptomLikely causeCheckFix
Package surface is missing after installProvider or manifest is not loadedConfirm capell.json, package composer.json, and provider registrationReinstall the package, refresh Composer autoload, and clear host caches
Public output leaks unexpected stateRender data, cache variation, or authoring boundary has regressedCheck public Blade, cache tags, and public-output safety testsMove data loading out of Blade and rerun the package public-output tests
  1. Install the package: composer require capell-app/theme-blog.
  2. No package-specific setup command or migrations are declared.
  3. Open the Blog Homepage and confirm the public output renders without admin state.