Systatic is no longer in active development. Only bug fixes and security fixes will be released from now on.


Keep up-to-date with the latest updates in Systatic.


1st November 2019

This is the last update to Systatic before being archived

  • Updated dependencies
  • Cleaned up codebase


13th September 2019

  • Fixed emojies on the Github templates
  • Upped the algolia search client version
  • Fixed issue where sites weren't being compiled
  • Updated the command descriptions so that they are more helpful
  • Version for console is now defined


11th September 2019

  • Updated dependencies


9th September 2019

  • Removed the build namespace
  • Refactored stuff to use collect() stuff (a lot of refactoring)
  • Renamed unique identifier of collections from key to id.
  • Added deciders to decide which views and permalinks are used for entries
  • Removed logging helper
  • Removed dd helper from our helpers file, however it can still be used through Laravel's helpers (no change required for the user).
  • Commented out env helper
  • Added output_path helper
  • Added storage_path helper
  • Added views_path helper
  • Added find_files helper to find files with specific extension


7th September 2019

  • [fix] Sorted composer.json dependencies by alphabetical order
  • [fix] Environment variables are now fetched from both the system and the .env file (meaning they will now work on Netlify).
  • [fix] Updated Github issue and pull request templates
  • [fix] Updated readme to match Duncan's other open-source projects
  • [fix] Applied StyleCI changes


4th September 2019

  • Updated collections to Laravel v6 version


20th August 2019

  • [fix] Fixed issues with the Markdown parser
  • [fix] We can now detect templates from all templating languages the user has setup.


19th August 2019

  • [new] You can now add your own compilers in Systatic plugins!
  • [new] Page variables for meta properties
  • [new] Page variables for config properties
  • Done some stuff with dependencies
  • Renamed and remodelled the commands directory
  • Added Collision to deal with console exceptions
  • Added typehints to methods
  • Renamed some collection store stuff
  • Made a new re-usable class for creating stores
  • Refactored the way plugins are done
  • Split YAML and Markdown parsers apart

Upgrade Guide

Along with the normal upgrade steps, you'll need to switch out $meta->author properties to $author and $config->url to $url in your views. These are fairly basic changes to make.


19th July 2019

  • Removed idea directory from Git repo
  • Return the collection as part of the page array


19th July 2019

  • Fixed the build key on the collection array so that you can choose if you want HTML files to be built or not.


18th July 2019

  • Fixes array to object conversion issues (everything is an object now)
  • Tests to confirm things are objects
  • StyleCI code changes
  • Added a for new projects.


16th July 2019

  • Updated Markdown stuffs
  • Updated dependencies
  • Added Collections
  • Remove lot's of logic from build methods
  • Refactored caching
  • Search is now a thing
  • Refactored Commands from Symfony Console to Laravel Illuminate Console
  • Deployment Command
  • Import commands
  • Init command
  • Serve command
  • Refactored the Blade Compiler
  • Refactored config stuff
  • New filesystem stuff
  • New plugins system
  • Helpers!
  • Updated stubs
  • New config file format
  • New console file
  • Local Laravel Valet driver
  • New Test Case
  • Rewritten tests
  • Updated test fixtures

Full changelog will be released along with the v2 release.


21st June 2019

  • You can now set a filetype for the file to be outputted as from your front matter.
    format: xml


6th June 2019

  • Fixed bug where slug becomes title if it is set from front matter


3rd June 2019

  • Fixed env filenames


31st May 2019

  • Fixed fonts and various other style issues on the default index
  • Moved stubs to different location
  • Created a Laravel Valet stub


24th May 2019

  • Added a new security policy
  • Modified readme links to go to the new website/docs
  • Created a basic landing page for new sites


21st April 2019

  • Created a clear cache command
  • Created a clear site command
  • Added a .gitignore file to stubs


19th April 2019

  • Fixed compiler tests


19th April 2019

  • Changed the way we load commands
  • Cleaned up code with PHP CS Fixer
  • The build site message is now green!
  • Configure redirects
  • Written tests for redirects
  • Refactored compiler tests a little

Recommended changes

It is recommended that you change the systatic file in your site to the following contents`:

#!/usr/bin/env php

require __DIR__ . '/vendor/autoload.php';
use Damcclean\Systatic\Commands\Commands;

$commands = new Commands();


17th April 2019

  • You can now use view subdirectories with . instead of /
  • Written tests for views in subdirectories


15th April 2019

  • Fixed Blade cache location


12th April 2019

  • Added images to package readme
  • Wrote more tests for the compiler
  • Wrote tests for the blade compiler


4th April 2019

Breaking changes

In front matter templates, you need to change template to view. You also need to make this change in your Blade templates.

  • Removed clear cache command
  • Fixed readme Travis CI build badge
  • Renamed template to view Breaking change
  • Removed all Blade directives and replaced them with page variables (except for the env one)
  • Written test for slugs in front matter
  • Added slug variable for pages
  • Added full page url variable for pages

v1.1 - Big changes

3rd April 2019

You might have noticed that we have given Thunderbird a new name, Systatic and that we've changed how everything works behind the scenes.

Instead of being a boilerplate or site template (like it was before), I've spent today restructuring Systatic into a nice little Composer package that you can pull in like this:

composer require damcclean/systatic

Upgrade Guide

  1. Remove the src, tests, thunderbird, composer.lock, composer.json files/directories
  2. Run composer require damcclean/systatic
  3. Run the command cp -a vendor/damcclean/systatic/stubs/ ./ Be aware that this might clear configuration files
  4. Rename resources/views/ to views
  5. Rename the cacheDir key in the config.php file to storageDir
  6. Rename the local directory to storage
  7. Build your site php systatic build


  • Cleaned up .gitignore
  • Created contributor policy
  • Moved to damcclean organisation
  • Renamed package name
  • Changed names of directories
  • Removed old sample content
  • Redid readme
  • Removed front-end styling
  • Changed PHP namespaces
  • Support for compiling .markdown files
  • Removed the Update command
  • Removed the Updater code
  • Refactored slugs for markdown
  • Made changes to where logs are kept
  • Created stubs for scaffolding new sites
  • Deleted the clear cache command
  • Wrote new test for .markdown file compiling
  • Wrote a test for configurations
  • Removed site build test


2nd April 2019

  • You can now have .html content files
  • Separated out the Blade compiler code
  • Hopefully fixed the updater - tests were being incorrectly copied across
  • Wrote compiler tests
  • Added assertion to the site build test


29th March 2019

  • Refactored logging to use the Symfony Filesystem package
  • Implemented testing
  • Fix bug where HTML has issues within content


13th February 2019

v1 Launch 🚀

It's finally time to officially launch the first version of Thunderbird! A fast and lightweight static-site-generator built on PHP.

We've come along way since 0.1 was released on the 30th December last year. We've added support for templating, yaml front matter, configurations and a lot more!

Here's a full changelog of everything that has been changed and added.

  • Laravel Blade templating
  • Front-end Boilerplate - Laravel Mix, TailwindCSS, Vuejs, PurgeCSS
  • Better version control settings and configuration
  • Separated code and refactored it
  • Added a clear cache command
  • Added an updater to make updating/downgrading Thunderbird versions even easier
  • Added logging ability


You can find documentation on our website. If you have any questions, drop by our Discord server.

v1.0 Release Candidate 3

6th February 2019

  • Fixed the updater
  • We now check the front matter first for a slug
  • You can now set a slug from your front matter
  • Fixed template bug
  • Changed the way you get content and page title in Blade templates (Breaking change)