Basic Usage
After installing via one of the means mentioned on the installation page, the program works like this.
Creating a Website
In order to create a website, you would issue one of two commands, depending on what you want to to do.
If you want to create a new directory for your website, you would do something like this:
kurama create path/to/directory
This will create all nonexisting directories along the specified path and create the basic structure of the website in that directory, along with a minimal configuration file.
If you want to establish a website in the directory you're currently in, you would run this instead:
kurama init
Website Hierarchy
The structure of the website, as generated by the above commands should look like this:
example.com
|_assets
|_css
|_js
|_images
|_content
|_templates
|_output
|_config.json
Example.com is the directory containing the website and will differ based on the name of the directory the site was created in.
The templates folder is like the layout folder in Hyde, which will hold the templates.
The Output folder will not exist until you create the website, but is where the generated files will be located.
The config.json file is where you configure the site, like giving it a name, a URL, site navigation, etc.
The assets are the stuff the sites needs and will be copied overed to the output folder as is, though the three folders underneath are the only ones that are expected.
Pages & Posts
Pages and posts are created in the same manner inside the cntent directory, and are a big difference from other static site generators.
Pages
Pages are created like this:
--- title: Hello, World! slug: index --- # Welcome to oblivion!
Title sets the page's title and the slug sets the output filename.
When the page is generated, the file will have html appended.
Like in Jekyll, the three dashes separates the frontmatter from the rest of the content.
If you so desire, HTML is allowed in the content area.
Posts
Unlike other static site generators, where posts differ by either file naming conventions or directory location, posts are located with pages, but kurama is smart enough to know the difference.
A post is created like this:
--- title: Hello, World! date: 2026-06-27T08:50:00-07:00 slug: hello_world tags: - introduction --- Hello, World!
This creates a post dated June 27, 2026 at 8:50 A.M. PDT and given the tag introduction.
The moment you specify a date, kurama considers the file to be a post, and will generate an archive, or blog as people generally call it, as well as a feed.
In the output folder, posts will be located in the posts directory with a directory structure of YYYY/MM/DD.
The exact location of posts will be determined by your configuration file.
Building the Website
To build a website, after getting everything into place, run the following in the root directory containing your site files.
kurama generate
This will create the output directory, copy assets over, and generate the HTML.
The resulting output directory structure will look like this:
output |_css |_js |_images |_index.html
The css, js, and images files originate from the assets folder are located at the root of the site.
Unless you made an index file or created some posts, with the intent that the blog is the main component of the site, the index.html will not exist.
Preview the Website
If you would like to preview the website before publishing it, run the following in your website's root directory:
kurama serve
This will start a server on your local machine that listens on port 8080.
The server's root is the output directory and has a default index of index.html.
While the server is running, the output folder will be recreated every 10 seconds, so changes made to content will be visible shortly after saving.
However, since everything is recreated from scratch, this can be a slow procress, so use this only to make sure the initial structure and your CSS rules are correct.
Deleting Output
While you can use your system's native tools to delete the output, you can do so in a much simpler fashion by running:
kurama clean
When this is run, the output directory is removed, as if you had never generated your website.
If you change your templates, like adding a CSS file, it is recommended that you run this manually, instead of relying on the dev serve included in kurama.