Convivial for GovCMS, a starter site for GovCMS was first released many years ago when GovCMS was released. It’s original goal was to take a base install of GovCMS 8 and then add features on top of it. The aim was to demonstrate the extensibility of GovCMS and to unlock a number of tools to extend that base functionality. A lot of water has passed under the bridge in that time. GovCMS is now based on Drupal 9 and a new codebase. Morpht also has more experience with building GovCMS sites and we have seen what has worked and what hasn’t.
The development of the new version of Convivial for GovCMS has given us the opportunity to make a number of improvements to the underlying approach and the addition of a number of new features which will bring new value to the sites we implement onto the platform. This will allow us to build sites more effectively and more rapidly as we bring these new sites onto the GovCMS platform.
TL;DR
If you prefer to experience what the new platform is like we recommend that you jump on over to the new demonstration site at https://govcms-auds.convivial.io/. There you will find:
- A test section demonstrating components, view modes and content types.
- A personalisation solution based on different audiences. Try switching between Upgrade to Drupal 9 and GovCMS personalisation
- And be sure to check out the homepage. where you will see most of the personalised content.
Once you are done there you can come back here and read about what we have done.
What is new?
Lightweight personalisation
Websites should communicate clearly and directly and guide users through the tasks they wish to achieve. A one size fits all approach is not an effective way to do this when users will have different intents or goals. Website personalisation is a way to customise the content which is displayed based on the user context and behaviour. Convivial for GovCMS has incorporated a lightweight personalisation approach which achieves this aim by driving customisation through the user intent.
We call this approach “lightweight” as it is based on a simple approach. A single variable “intent” is powerful enough to achieve some impressive results through the querying and filtering of content which is shown to the user.
In a nutshell the personalisation works like this:
- An anonymous user visits an "audience" page. eg. Gold
- On that page some client side Javascript extracts the intent of the page and stores it locally.
- On the audience page the user will immediately see some personalised content - a CTA block at the bottom of the page.
- Upon returning to the homepage: the user will see some more personalised content: promotion block, filtered articles and filtered news. The personalised CTA block will also be displayed at the bottom.
- If the user visits a different audience they will get different content on the homepage.
This approach to personalisation has a few advantages:
- There is no need to integrate with third party services.
- Client data is only stored in local storage, it never leaves the site.
- A flexible structure in the backend supports the data filtering needs for promotions, articles and news.
We believe that the above approach will be applicable to a large number of government sites. Most sites include the concepts of Topic or Audience and these are helpful dimensions for personalising content.
From a practical point of view it is relatively straightforward for Morpht to customise the approach for the individual client. The real challenge is around defining the audiences and the resulting messages. This is a UX problem which needs to be solved during the discovery and design phases of a project. This is something Morpht is able to help the client with at the start of the project.
We expect to release further articles on GovCMS personalisation in the future, explaining how this works in more detail.
Gold support
The DTA recently announced that the Australian Government Design System (AuDS) will no longer be supported by them. The community responded by forking the project into Gold. Gold is where future development will take place. This will include bug fixes and possibly new features.
Morpht has responded by swapping in Gold as the underlying design system framework. This swap was a fairly easy one to make as Gold was a fork of AuDS. This change should ensure that improvements will flow into the platform when they are released. End users of Convivial for GovCMS should see no real changes on the frontend.
New content types
The original version of GovCMS8 shipped with a number of content types which targeted common use cases for government sites. However, they did have a number of issues which made them difficult to work with in a practical sense. In a nutshell they suffered from:
- Overlap in the content they were modelling.
- No consistent taxonomy which would unite them such as Topic or Audience.
The starter content types were generally considered as examples and as such Morpht never did develop or fix them in the previous release of GovCMS. Each project we did would normally start by deleting them and starting fresh.
This approach was clearly inefficient. So to rectify this we decided to ditch the starter content types and build our own. The types we selected were based on experience with many GovCMS builds where common patterns emerged. The content types we ship with now include:
- Section: For landing pages
- Page: For basic site content
- Topic: A cross cutting categoriser for subjects.
- Audience: A cross cutting categoriser for different audiences and intents.
- Article: Time based content.
- Event: For events with a start and end date.
- Person: So that articles can be owned by a Person and used for hosting ministerial blocks and the like.
- FOI Disclosure: A common feature for department sites.
This set of content types is a good starting point. There are other candidates for Content Types but we stopped short of going too far, not wanting to boil the ocean on all of the possible use cases:
- Place: Could be helpful for showing event locations
- Resource: Could be helpful for resource hubs
It must be emphasised that these content types are just starting points. They can be easily extended, removed and adapted. If new content types are needed they can be easily added.
During the design phase for these content types we gave careful consideration as to how they would be modelled. It was tempting to add classifier taxonomies for Article type and Event type. We decided to not go down this path as adding this structure can be too much for simple sites. We have therefore introduced a “listing” marker for content so that any content on the site can become a listing page. For example, a humble Page could be identified as a “listing” and then articles and events can be assigned to that page. This allows for content to be surfaced in an automatic way across the site. This approach does away with the need for over architecting the taxonomy of the site.
Cleaner architecture
Convivial for GovCMS, at its foundation, is a set of underlying components and patterns which is distinct from design system or theme. The components and patterns are of course informed by the capabilities of the design system but they are nonetheless distinct. For example, we are able to look at the capabilities of AuDS and Bootstrap 5 and then define a set of components which will work well with both of these systems. Once the core is defined it becomes a lot easier to implement a theme on top of it.
The underlying architecture has been cleaned up so that we are more easily able to implement on top of it. The initial release of Convivial for GovCMS has targeted the AuDS (Gold) theme. In the future we intend to release a version based on Bootstrap 5 for clients looking for a design which is more flexible and not constrained by the particular look and feel of AuDS.
New header
One of the most difficult areas of the AuDS was that it did not clearly define an effective header region. The design system was not explicit in how that part of this site was to operate. When designing a header element there are a number of features which are generally required:
- Breadcrumb
- Heading 1
- Introduction
- Optional background image
- Optional colour palettes
- Callout feature links
As there was no definition of this component for AuDS we decided to look further afield for inspiration. The Hero Banner defined by the NSW Digital Design System does a good job in this area, nailing each of the above requirements. It offers a great range of flexibility for editors who need to have a complete and functional header and the need to customise it in certain cases. We therefore used this as a blueprint as to how a header could work.
You can see one such example in action on the Test Section page.
Slick carousels
The slideshow is a much maligned component. It is frowned upon for a number of reasons, mainly based on accessibility and user interaction. At Morpht we share these thoughts and have avoided recommending or implementing slideshows for clients.
However this doesn’t mean that the concept of a slideable component is invalid in all cases. It is a common design pattern these days for a component to have a horizontal scroll aspect. this can be useful for supporting content at the bottom of pages to keep users engaged with the site after the main content has been consumed.
The Slick slider is an open source library which implements this slide functionality in a nice way. We therefore decided to incorporate it as a “layout” option for the Node List and Item List components. Editors used to have the option of laying out lists in halves, thirds and quarters. They now have some extra options to use a slick Slider.
You can see one such example in action on the homepage demonstrating the different content types on the platform.
What has stayed the same?
The essential underpinnings of Convivial for GovCMS remain the same.
GovCMS 9 SaaS compatible
The platform is still GovCMS SaaS compatible and has been built on top of GovCMS 2, the most recent Drupal 9 version. We have worked within the confines of the module selection available and have made full use of the capabilities which ship with GovCMS.
Best practice approach
Convivial for GovCMS is based on standard best practices when building modern Drupal websites.
- The layouts are based on Layout Builder. This has involved a refactoring of the Panelizer approach which came with GovCMS8.
- Components are based on the Paragraphs module, allowing editors to add components to pages in a flexible way.
- The features and patterns of the Australian Government Design system have been exposed to editors such that they are able to control the structure and presentation of content in a way which conforms to the design system.
Flexible and component driven
Morpht takes a considered approach to the way sites are built. In general we consider Content Types to be “vertical” in nature in that they handle the individual requirements of the site. Most other things in the site can be considered horizontal:
- Grids
- View modes
- Indexing and metadata
- Colour palettes
- Components
- Roles
- Workflow
The majority of effort in the build has been around refining and improving these aspects so that the system behaves in a coherent way when new content types are added. The system is able to scale when new functionality is added.
Accessible, responsive, SEO friendly and performant
Government sites need to attain the highest levels of quality. Many of the sites we build are targeted towards users with different abilities. We therefore strive to deliver the highest quality of site in the areas of accessibility, responsiveness, SEO and performance. If we find an issue, the fix is folded back into the base distribution to make sure it is better for the future.
Editor friendly
As Drupal has progressed a lot of effort has naturally gone into the site builders, themer and developer experience. At Morpht we focus on the editors. Our aim is to build sites which are flexible for editors, allowing them to access the features of the design system and style guide which underpins the site. Balancing this is a desire to stop the editors from going outside the bounds of what is aesthetic or accessible. With these factors in mind we design our components to focus on collecting the data required and exposing functionality through different options and select lists.
Who should use it?
Simply put Convivial for GovCMS is ready for anyone wanting a GovCMS website which uses the Australian Government Design System. This includes:
- SaaS and PaaS platforms
- GovCMS 7 upgrades and new builds.
All of these sites will benefit from the jumpstart which Convivial for GovCMS provides.
What is next?
There are still a few things left in our current roadmap.
Bootstrap 5
We mentioned earlier that Convivial for GovCMS has an improved architecture. The architectural improvements involved clearly defining core aspects which were considered to be defined by Convivial. This encapsulation has allowed us to start work on a Bootstrap 5 implementation of the platform. The Bootstrap 5 version is progressing nicely and is validating the approach we have taken with the refactoring We expect to be able to release it in the coming weeks.
A Bootstrap 5 version will be attractive to site owners who do not wish to be bound by the look and feel of the Australian Government Design System. Bootstrap is a lot less opinionated and is therefore a better blank canvas for overlaying different designs. As it is well known and understood by themers and developers around the world it offers a more flexible way forward for those looking for more design freedom in their sites.
More personalisation
We have introduced a lightweight personalisation solution with the new version of Convivial for GovCMS. Our aim was to show the benefits of what can be achieved with a simple approach. Customising content around user intent is a direct and powerful way to deliver content to the user. The underlying logic is very simple as it is being driven by a simple metric - the intent.
Morpht has been developing more comprehensive personalisation solutions outside of the GovCMS platform. This includes a logic layer which is able to make use of a larger portion of the user context. Our underlying profiler engine is able to make use of aspects such as geolocation, user affinity for topics, campaign integration and more. We expect to release these new features in the coming months. The code will be designed so that it can be adapted into a GovCMS SaaS environment.
Conclusion
The latest release of Convivial for GovCMS represents the best of our work at Morpht. We have been able to incorporate the learnings we have made from developing GovCMS sites over the past 5 years. Our aim has been to build a truly useful starter site for government agencies looking to get up and running quickly. We are firm believers that a website project should not have to reinvent the wheel and repeatedly solve all of the underlying plumbing issues. Convivial for GovCMS is a platform which allows us to focus on solving the unique and different requirements of the client.
We want to bring all of this work to a wider audience naturally. If you would like to find out more or perhaps the possibilities around personalisation, please get in touch with us and we would be happy to discuss. We love talking Drupal and what can be done on the GovCMS platform.