How to install a theme?


Hello, I’m new to Kirby.

I have installed the Starterkit and I would like to try the Baseblog theme. As far as I understand, I must replace the default /assets, /content and /site folders by the ones from Baseblog. But I don’t want to lose the default theme!

The only solution I see is to make a new installation of Kirby —reinstall the Panel, create a new user, etc.—, which seems impractical to me as long as I just want to test different themes.

Maybe it’s because I’m accustomed to the way themes in WordPress works but I don’t get the logic behind Kirby’s system.

How do you do it?

Install kirby themes

A theme in Kirby is really more of a complete installation consisting of the site, assets and content folders. The reasons for this is that content, templates, blueprints etc. are closely tied in Kirby not only by their file names, but also in what they render.

With Kirby, you are absolutely free to define your own content fields. To render these content fields, you need a corresponding template. And to show these fields in the Panel, a corresponding blueprint.

The small downside is that this makes switching between different themes rather difficult, as compared to Wordpress, where you only have one big field for all your content. The big advantage is that you get structured content that you can use in many different ways.

While it should be possible to install a lot of theme parts as a plugin now using Kirby’s extension registry, there are still limits as outlined above.

This was just to give you some background information.

To answer your question, if you want to install a theme, either replace your existing files with the ones from the theme (rename your old folders e.g. with an underscore), or use a new installation.


@texnixe, thank you very much for the detailed background information :slight_smile:
Your whole answer helped me a lot.

By the way, if you have to make a new installation, is there a way to preserve the user credentials so you don’t have to create a new user each time? I tried to preserve them by copying and pasting the whole directory, but this doesn’t seem to work :sweat_smile:


It should work if you copy/paste the /site/accounts folder? At least it works for me…


Oh, you’re right, if I copy/paste the /site/accounts folder it works as expected. :ok_hand:


Thanks for answering this query. I am also new to Kirby and this was very helpful.