Soushi: Bimodal Site Generator Powered by PHP

Your First Page


By default, pages are supposed to be placed in source/ directory. Soushi supports Markdown for page contents and Front Matter for metadata of a page.


title: My Homepage
template: page

This is my homepage!

The metadata properties used in above page are to:

  • title: refer to the page title
  • template: refer to the template file for the page


By default, templates are supposed to be placed in templates/ directory. Templates are just plain PHP scripts enhanced by Plates library.


    <link rel="stylesheet" href="main.css">
    <title><?= $config->site_title() ?></title>
    <h1><?= $config->site_title() ?></h1>
    <h2><?= $title ?></h2>
    <?= $content ?>

For details, see Variables and Template sections of this site.


Files in source/ directory that have extension are recognized as assets such as CSS, JavaScript, or images. You can put whatever static files you like in the directory.


/* some css descriptions below */

CAVEAT: Assets are NOT automatically copied into public/ directory which can be shown via preview server described below. Thus, you have to make symlinks to each assets from public/ directory:

$ cd public
$ ln -sf ../source/main.css main.css


Run soushi server to preview your site in browser.

$ ./vendor/bin/soushi server

By default, the server launches at