Date:
2 March 2023
Author:
Alex Skrypnyk

What’s in the CivicTheme 1.4 release?

The recent CivicTheme 1.4 release includes a major review of all components and over 100 bug fixes. Some of the bigger changes include:

  • New Event content type
  • Standardisation across all CivicTheme cards
  • New support for external links
  • Updates to filters for automated lists
  • Automatically generated component pages for visual regression testing
  • New documentation
  • The release of CivicTheme on drupal.org

New Event content type

The new Event content type provides event-specific fields. For example, time and date, and location (with the ability to embed a map URL or add in an address). Event cards can then link to this content.

Standardisation across all CivicTheme cards

CivicTheme boasts an extensive range of different cards. But the card types had grown quickly and had different developers working on different cards. The CivicTheme 1.4 release was an opportunity to standardise all cards.

Some of the changes to cards include:

  • Consistency across fields and their labels

  • Unification of card designs (Figma) and the card components in CivicTheme

  • Consistency across how the data coming from Drupal gets populated on the cards

  • Separation between the fields for ‘true’ cards (that provide a summary and link to existing content) and other components such as campaigns that include content rather than summaries

External links are now better supported with:

  • Automated addition of an icon next to external links (see the below screenshot)
  • Option to open external links in a new tab

CivicTheme now also supports 'mailto:' links.

Screenshot showing an external link with associated arrow icon

In addition, people with a Site administrator role can add a list of allowed domains that will NOT be treated as external links. This is handy for sub-sites, campaign sites, etc. that might have a different domain but content editors don’t want the links to appear as an external link.

Updates to filters for automated lists

CivicTheme’s automated lists use filters to determine what content is displayed. For the 1.4 release, there was a major overhaul of the filters. Users can now choose to have:

  • One filter
  • Multiple filters
  • Default (fallback to standard Drupal filters)

This gives content editors more choice when creating automated lists. It also lets people opt-out of the CivicTheme way of filtering, so site owners and developers have an option to alter filters as required.

Automatically generated component pages for visual regression testing

The CivicTheme team created a tool to automatically generate component pages with a range of variations whenever a CivicTheme release is deployed. This delivers rigorous visual regression testing to catch any bugs.

See generated component pagesExternal Link

A visual regression tool automatically compares the newly generated component pages to their counterparts in the previous release and provides a list of any discrepancies between the old and the new. A QA engineer can then go through the list and assess if the differences are intentional (e.g. component updates) or if a regression bug was introduced.

This automation saves the CivicTheme team a huge amount of time in testing. Instead of having to create all the components on pages with many variants every release and compare them manually, that process is now automated.

It’s also highly beneficial to CivicTheme websites and prospective websites. The automated component pages ensure stability across releases. The tool shows CivicTheme’s rigour and solid support base moving forward.

While it’s been set up as a development tool, it’s also possible to use it to see how components look with different variations (e.g. image or no image, light or dark theme, etc.).

New content editor documentation

To mark the release of CivicTheme 1.4 the team also released content editor/administration documentation.

View CivicTheme documentation at docs.civictheme.ioExternal Link

The documentation is still being expanded, and we’ll also be adding developer documentation soon.

CivicTheme on drupal.org

CivicTheme is now also on drupal.orgExternal Link . This means the theme can be directly downloaded and installed using the standard Drupal procedures:

composer require drupal/civictheme

View CivicTheme page on Drupal.orgExternal Link

If you want to checkout the latest CivicTheme files, go to:

You can also view the full CivicTheme 1.4 release notesExternal Link