See AsomeCMS in action

A quick tour of what your visitors will see — and how easy it is to manage from the admin panel.

Page builder

Pages are built from blocks. Drop in a CTA, write some content, add a pricing table — each block has its own template you can override in templates/. Reorder by dragging. Edit content inline with Editor.js, or paste in legacy HTML and it'll convert to blocks automatically.

Block types: Content (rich text), Images (gallery), Cards (3-column), CTA (banner with button), FAQ (collapsible), Pricing (3-tier table), Separator (visual break).

Theming without complexity

Pick from five accent palettes — blue, amber, forest, rose, slate — and decide whether your site forces a theme or lets visitors choose. Upload separate logos for light and dark mode and they'll auto-swap. Custom favicon. That's the whole theming surface.

Need more? The frontend templates are stock Twig under templates/ — fork them and ship.

SEO and social out of the box

Per-page meta titles and descriptions. Auto-generated sitemap at /sitemap.xml. Per-page Open Graph images generated on demand — and a one-click bulk regeneration tool in the admin when you change branding.

No SEO plugin to install. No "social preview" upsell.

Media library

Upload anything. Images are auto-converted to WebP (except SVGs and ICOs, which pass through for logos and favicons). Sized variants generated via LiipImagine — thumb, card, hero — referenced by name in templates.

Drag-drop in the admin. Filterable. Bulk-deletable.

Web installer

First visit redirects to /install. Step 1 checks PHP version and required extensions. Step 2 takes database credentials and runs migrations. Step 3 creates your first admin user. Step 4 writes a lockfile and you're done.

No php bin/console doctrine:migrations:migrate for clients to misspell.

Stack

Built on

Symfony 7.4 · PHP 8.2+ · Doctrine 3 · MariaDB 10.11+ / MySQL 8+

Editor

Editor.js · CommonMark · custom Markdown figure syntax

Frontend

Stimulus · Turbo · AssetMapper · LiipImagine · Bootstrap 5