LeafCMS GitHub Install
Docs

The in-app guide

This is the same guide as Admin → Help: usage, each admin screen, themes, tags, environment, and install.

A theme is a front skin (Blade files + the models it declares). There is no app store — switch them on this machine in Themes. Files and tags: Templates.

Use a theme on this site

  1. Open Themes. “Current” is the one in use. “Configure” opens that skin’s phrases, models, and custom options.
  2. Click the preview. Themes without a home page cannot be used (no index/index.blade.php).
  3. Click “Use on this site”: that skin becomes current, and missing models and empty sections are added. Existing fields, sections, and entries are not changed or deleted.
  4. If this skin is already current but models are missing, the button is “Add missing models” — it does not switch skins.
  5. If the front is stale, clear Cache.

Empty sections have no entries yet — write them. The sports theme is a public listing demo; use it lawfully.

Add a theme

HowNotes
Copy oneCopy a complete theme folder. Only edit the new directory; bundled themes stay untouched.
Upload zipMust contain index/index.blade.php. A top folder name can be the slug. No executable PHP.
Drop a folderPut it in resources/views/themes/slug/ and refresh the themes page.
CLIphp artisan cms:theme-make brand --from=enterprise --name=Brand

Bundled themes cannot be removed. Custom ones can, which deletes the folder. The current theme cannot be removed. Slugs are lowercase letters, numbers, and hyphens.

Bundled themes

ThemeBest forModels
EnterpriseCompany siteArticle, page, product, job
BlogSimple blogArticle
DownloadFile downloadsDownload
NavLink directoryLink
SourceSource shopSource
MangaComicsManga, chapter
SportsListings / signalsSignal
MobilePhone skinSimilar to enterprise

“Use on this site” fills gaps from theme.json models / categories (the Configure page can override which models). Section titles may be {"zh_cn":"新闻中心","en":"News"}. Multilingual / responsive can also be toggled per skin. Custom options live in config and are read with cms_theme('key').

Name, logo, mobile skin

Change the site name in Settings. Settings → Look uploads logo / favicon, color, footer, ICP. Empty values keep the theme defaults.

A separate phone skin: under Settings → More pick “Mobile theme” (often mobile), optionally a mobile domain, or switch by user-agent.

Theme FAQ

Will “Use on this site” wipe my entries?

No. It only adds missing models and empty sections. Existing fields, sections, and entries stay. After a skin change, some fields may not show until you align models or templates.

The button is grey / “missing home”

There is no index/index.blade.php. Incomplete copy or zip causes this. Bundled themes should not.

Front did not change

Clear Cache. If disk HTML is on, regenerate it.

What to edit after copying

Only Blade / CSS / theme.json in the new folder. Refresh the themes page. Put a preview in preview.png. Tag syntax is under Tags.

Group @sanpang