pixelbrackets/html5-mini-template

HTML5 Mini Template for quick rendering of status pages, TOC pages, or any other minimal single-serving site

1.7.0 2020-05-11 13:59 UTC

This package is auto-updated.

Last update: 2020-05-11 11:59:58 UTC


README

Version Build Status Made With License Contribution

The packages provides an HTML5 mini template for quick rendering of status pages, TOC pages, or any other minimal single-serving site.

Screenshot

Vision

This package provides a single class to turn a text or HTML-snippet into a valid HTML5 document.

This way it is possible to let an app return an HTML response without the need to store a template file beforehand or initialize a full-blown template engine.

The package therefore does not have template variables, modifiers or parsers. Three lines of code should be sufficient to wrap a given message into a valid HTML document. See »Usage« for some examples.

The package follows the KISS principle.

Webapp

This package is used on html5example.com.

If you are in need of an HTML document once only, then use a commandline tool like HTTPie and run http https://html5example.com > index.html.

The webapp supports some options of this package as well, for example http POST https://html5example.com title=Minimal-Template > index.html to pass a custom title.

Requirements

  • PHP

Installation

Packagist Entry https://packagist.org/packages/pixelbrackets/html5-mini-template/

Source

https://gitlab.com/pixelbrackets/html5-mini-template/

Usage

  1. Get the example template

    $document = (new \Pixelbrackets\Html5MiniTemplate\Html5MiniTemplate())->getMarkup();
    
  2. Get template with custom content and write to file

    $template = new \Pixelbrackets\Html5MiniTemplate\Html5MiniTemplate();
    $template->setContent('<h1>Index</h1><p>Nothing to see here</p>');
    file_put_contents('/var/www/example/index.html', $template->getMarkup());
    
  3. Get template with custom content, an external link to a CSS framework output the document as response

    $template = new \Pixelbrackets\Html5MiniTemplate\Html5MiniTemplate();
    $template->setStylesheet('skeleton');
    $template->setContent('<h1>Status</h1><p>All Systems Operational</p>');
    echo $template->getMarkup();
    

Options

  • setContent() the message to show, any HTML string to replace the main content of the document
  • setStylesheet() may be a URL to any existing stylesheet or one of following reserved keywords which then creates a link to a CDN of the selected CSS framework
  • setStylesheetMode() either link the given stylesheet (Html5MiniTemplate::STYLE_LINK, default) or fetch its content and print it inline (Html5MiniTemplate::STYLE_INLINE).
  • setTitle() the title is the first headline found in the document, unless it is overwritten with this option
  • setAdditionalMetadata() any additional metadata like metatags or link references, for example a canonical link to avoid duplicate content - Usage of this option is an indicator that the given use case is too specific and switching to a template engine should be considered

License

GNU General Public License version 2 or later

The GNU General Public License can be found at http://www.gnu.org/copyleft/gpl.html.

Author

Dan Untenzu (mail@pixelbrackets.de / @pixelbrackets)

Changelog

See ./CHANGELOG.md

Contribution

This script is Open Source, so please use, patch, extend or fork it.

Contributions are welcome!