Objective
Build a professional documentation site for Blackcube CMS that demonstrates the CMS capabilities in a real-world situation.
This project serves two goals:
- Technical showcase: Concrete demonstration of Blackcube capabilities
- Real-world use case: Complete and functional implementation example
Info
This guide presents architecture and usage examples. Blackcube doesn't impose anything: adapt structures, widgets, and approaches to your project needs. Developers remain in full control of their code and choices.
Target Audience
- Evaluate Blackcube CMS for their projects
- Understand how to structure a Blackcube project
- See a concrete implementation example
Tech Stack
- Yii2 (PHP 8.3+)
- Blackcube (core + admin)
- MySQL 8.0 / MariaDB 10.11
- Tailwind CSS v4
- Vanilla JS
- Heroicons (SVG)
Features Demonstrated
Content Structure
- 9 BlocTypes with JSON Schema
- 5 page Types
- Custom admin templates
- Nodes (Sections)
- Composites (Articles)
- Parent/child relationships
Multilingual
- Parallel FR/EN structure
- Language switcher
- Automatic hreflang tags
SEO
- Complete per-element configuration
- XML sitemap
- Clean URLs
Navigation
- Hierarchical sidebar
- Automatic breadcrumb
- TOC extracted from headings
- Prev/next navigation
Administration
- Centralized parameters
- Configurable menus
- Custom input interface
Deliverables
Back-Office Configuration
- 9 configured BlocTypes
- 5 content Types
- Centralized parameters
- Menus (header/footer FR/EN)
- Complete tree structure
PHP Code
- Helpers (Parameters, CmsHelper)
- Controllers (Cms, Redirect)
- Behavior (HrefLang)
- Model (MailContact)
- Block and layout widgets
- Views
- Admin templates
Content
- Home pages (FR/EN)
- Contact pages (FR/EN)
- Documentation articles
Site Structure
Tree Structure
/ (Language Redirect)
├── /fr (Home FR)
│ ├── /fr/guide (Documentation FR)
│ │ └── /fr/guide/* (Articles)
│ ├── /fr/a-propos (About FR)
│ │ └── /fr/a-propos/* (Articles)
│ └── /fr/contact (Contact FR)
│
└── /en (Home EN)
├── /en/guide (Documentation EN)
│ └── /en/guide/* (Articles)
├── /en/about (About EN)
│ └── /en/about/* (Articles)
└── /en/contact (Contact EN)
Page Types
- Type: Home
- Layout: Header + Hero + Features + CTA + Footer
- Type: Documentation
- Layout: Header + Sidebar + Content + TOC + Footer
- Type: Contact
- Layout: Header + Hero + Form + Sidebar + Footer
Architectural Flexibility
- Reusable widgets
- Direct code in views
- Mixed approach
Info
Blackcube doesn't enforce any particular structure.
Validation
- Project objective understood
- Tech stack validated
- Features to demonstrate identified