Static site generator which turns Markdown into HTML.
Primary repository: https://gitlab.com/nexendrie/site-generator
Github repository: https://github.com/nexendrie/site-generator
The best way to install it is via Composer. Just add nexendrie/site-generator to your dependencies.
Just run ./vendor/bin/generate-site. The script will go through all .md files in your project's root folder (and all its subfolders) and create html pages from them and place them under public folder. Both sources and output folders can be changed:
./vendor/bin/generate-site --source=doc --output=public
Alternatively, you can write your own script. Example:
<?php require __DIR__ . "/vendor/autoload.php"; $source = "./sources"; $output = "./docs"; $generator = new Nexendrie\SiteGenerator\Generator($source, $output); $generator->generate(); ?>
Site generator with every source file also looks for a meta file (file with same name but extension neon). You can set there some additional information for it there, like page's title.
title: My page
It is possible to normalize the meta info and modify the generated page based on some meta info. Just add meta normalizer to Generator via method addMetaNormalizer. The method accepts a callback. The normalizer will receive 3 parameters: meta info (as array), html code (in string) and name of currently processed file (as string).
styles: - style.css scripts: - script.js
If you mention a local image in your page, the file will be copied to output folder.