Hackable performant semi-static blogging system
Carbon is a hackable performant (semi) static blogging system.
It should be considered early alpha.
Carbon requires PHP 5.3+ and is tested on IIS 6.1 / Windows & Apache / Ubuntu.
public/Configuration.phpand override any constants from
Posts are listed in the index page. Pages contain a section of YAML followed by Markdown, by default.
Pages just contain markdown content, by default. In the basic theme, pages are linked from the footer.
Configuration settings override the defaults.
Manage your data models and theming logic using the MVC classes in the public/application folder.
const ADMIN_PASSWORD = "your passphrase";then visit /admin to login.
/content/errors/404.md. Now non-existing links will point here. Error pages follow the page data model.
By default Carbon uses Apache's mod_rewrite and IIS'es URL rewrite to keep urls nice. You can disable this behaviour by opening
const INDEX_PAGE = '/index.php';. This adds
/index.php to all urls (eg: /index.php/admin/new instead of /admin/new);
To enable caching: open
public/Configuration.php and set
const CACHE_ENABLED = true;. Pages remain cached until its cache-file is deleted, manually or through Admin > Clear Cache. Caching is required if you want to generate a static site.
Navigate to Admin > Generate static site. The
cache folder now contains a full static site.
To deploy the static site, open a Powershell and run
.\carbon.ps1 deploy. The script will ask for a keyword (for example: live), after which you can redeploy quickly by recalling the settings: in this case using
.\carbon.ps1 deploy live. Currently the script only supports sftp connections. It requires WinSCP and the WinSCP .NET Assembly / COM library.
Carbon will support third-party plugins (externals). Simply drop a spl_autoload_register compatible class into the
system/Ext folder and call the class in the code. See the php manual page for more info on autoloading classes. Feel free to organise classes using custom folders.