IT'S ALIVE! ...It's a CMS.
"After years in the laboratory, I have done what they said was impossible! I have stitched together the finest parts of the TALL stack to create the perfect content management creature!"
"Master, I think they just call it a CMS. The villagers are going to be so... mildly impressed."
composer require frankencms/franken-cms @beta
Behold! The Component Parts
"Each organ has been carefully harvested from the finest open-source specimens and stitched together with surgical precision!"
"We got most of them legally this time, Master."
Posts & Pages
The brain of the operation! Hierarchical pages, custom post types, and rich text editing that would make even the village scholars weep with joy.
Template Fields
The nervous system! Define editable fields directly in Blade with @frankenText, @frankenRepeater, and more. Pure electrical genius!
Taxonomies
The organizational cortex! Categories, tags, and custom taxonomies to keep your content specimens properly catalogued.
Menu Builder
The skeletal structure! Drag-and-drop navigation that even Igor can operate. "Hey!"
Media Library
The eyes of the creature! Spatie Media Library with responsive images and focal point cropping. It sees everything beautifully!
SEO Tools
The voice box! Meta tags, Open Graph, Twitter cards, XML sitemaps. Your creature will be heard across the land!
Dynamic Settings
The control panel! Type-safe configuration that even external packages can plug into. Like adding a new limb!
Modular Design
Interchangeable parts! Build your own user roles, extend the Filament panel, add custom fields. Your laboratory, your rules!
AI Integration
A brain that thinks for itself! OpenAI and Anthropic support for generating titles, descriptions, and alt text. "Master, should we be worried?"
"Witness My Greatest Innovation!"
"Conventional scientists define their fields in some distant configuration dungeon. BAH! I define them directly in the template, right where the creation happens!"
"It's actually quite practical, Master. Very DRY."
-
Fields materialize instantly in the admin panel
-
Smart caching that knows when to regenerate
-
Octane and FrankenPHP compatible (naturally)
<h1>
@frankenText('hero.title', [
'label' => 'Hero Title',
'default' => 'Welcome'
])
</h1>
<meta property="og:title"
content="{{ frankenField('hero.title') }}">
@frankenRepeater('features', [
'schema' => [
['name' => 'title', 'type' => 'text'],
['name' => 'desc', 'type' => 'textarea']
]
])
<div>
<h3>{{ $franken->title }}</h3>
<p>{{ $franken->desc }}</p>
</div>
@endFrankenRepeater
"Why Choose My Creation?"
"Other CMSs want you to abandon your laboratory and move into theirs. BAH! I built something that moves into YOUR laboratory instead."
"It's true. We didn't have to throw out any of our existing... equipment."
A Package, Not a Prison
- Installs into any Laravel app
- Works alongside your existing code
- No separate framework to learn
- Composer require and go
Building Blocks, Not Blueprints
- Use what you need, skip what you don't
- No forced conventions or structures
- Extend or override anything
- Your architecture, respected
No New Monsters to Tame
- Just Laravel and Filament
- No proprietary templating language
- No custom query builders
- Your existing skills apply directly
Assembled from the TALL Stack
"Only the finest components! Each one hand-selected from the crypts of the Laravel ecosystem."
"Master, you got them from Packagist. I watched you type 'composer require'."
Tailwind CSS
The beautiful skin
Alpine.js
The quick reflexes
Livewire
The beating heart
Laravel
The strong bones
"And for the brain's interface, FilamentPHP v5! A beautiful admin panel that requires zero configuration. Even Igor figured it out on his first try!"
"That was actually my second try, Master."
Ready to Create Life?
"If you want a CMS that does things its own way, with opinions about how content should work, then step into the laboratory! It's not for everyone, but nothing great ever is."
"Master means it's opinionated. But in a good way. Mostly."
"I got tired of every CMS telling me how to build. So I made my own—a bit of everything, stitched together my way. I built it for myself, had fun doing it, and hope you enjoy it too."
Mike Wall · mikewall.dev