Blocky is a base theme for Drupal 8, using Stable as its' base theme, but overriding some templates. Initial experimentation was carried out on a Github project.

Blocky is supposed to be a drop in replacement for stable with Twig block markup, not really a Starter theme like Omega or Bootstrap theme etc.

Various templates are marked up with Twig blocks to allow more targeted template overrides via extension. A bit more explanation and expansion can be found in this blog post.

If Blocky is your base theme (as opposed to the default Stable theme) you could for example create a new node template for a particular content type and rather than the usual copy/paste the entire node template and make changes in a few select areas, you can target individual Twig blocks

{% extends "@blocky/content/node.html.twig" %}

{% block node_title %}
      {{ title_prefix }}
      {% if not page %}
        <h3{{ title_attributes }}>
          <a href="{{ url }}" rel="bookmark">{{ label }}</a>
      {% endif %}
      {{ title_suffix }}
{% endblock node_title %}

The above could be your entire template, simply overriding the markup for node title from an H2 to an H3 all the rest of the markup remains in the template you are extending.

After installing as a Drupal theme Blocky can be sub-themed in a theme's .info.yml.

base theme: blocky

If nothing else is done Blocky will act exactly the same as Stable.

The following templates (currently, more will added) in Blocky have various Twig blocks marked up allowing extension in your theme templates rather than being restricted to complete override.

  • html.twig.html
  • page.twig.html
  • node.twig.html
  • block.twig.html
  • comment.twig.html
  • search_result.twig.html

Project Information