In August 2017, the UT Drupal Kit (UTDK) team began quietly working on a complete rebuild of the Kit, driven primarily by the need to have a distribution that is compatible with Drupal 8. Today, we are happy to announce the availability of the first Beta release of UT Drupal Kit 3.0.
This release represents a major milestone in the ongoing effort to provide the web publishing community at UT with a modern and robust toolset for the creation of branded, accessible, and secure public-facing websites.
Before getting into the details of the release and how to start using it, let’s take a look at the history of this effort and how it has evolved over the past two years.
Waiting for 8
Version 2.0 of the UT Drupal Kit was released on November 18, 2015, and introduced the custom “Page Builder” system of content components and layouts, drag-and-drop content editor, and the Forty Acres UT-branded theme. This release was planned and built in 2014 and 2015, while Drupal 8 was already in development. In fact, version 2.0 of the Kit was actually released just one day prior to the release of Drupal 8.0.0, on November 19, 2015.
Timeline of UT Drupal Kit development
While it was tempting at the time to try building a distribution using the “latest and greatest” version of Drupal, it was much more realistic to build a fully-featured distribution in the tried-and-true Drupal 7 than to be on the bleeding edge with Drupal 8 (D8). Even close to the 8.0.0 release it was clear that there were large changes yet to come in D8, and many critical pieces of functionality that were still missing, especially those that are provided by contributed (“contrib”) modules that had not yet been upgraded to work with D8.
In retrospect, this was absolutely the right decision. The work we put into UTDK2 has provided four years of solid service to our customers, and today over 150 sites are powered by the distribution. Additionally, by waiting until later in the D8 lifecycle to start work on re-building the Kit, we have been able take advantage of many new features that have been introduced in ongoing minor releases of Drupal core.
The most important of these new features is called Layout Builder, which only just became part of Drupal core in May 2019, with the release of Drupal 8.7. Layout Builder is the result of a long-running strategic initiative for Drupal core to:
- Create underlying APIs to support Layout management that can be used by core and contributed projects alike.
- Provide a drag and drop interface for creating layouts, which can apply both to overall site sections, as well as overridden on individual landing pages.
- Allow applying layouts to data entry forms as well as content
In other words, Layout Builder brings to Drupal 8 core many of the same things (and more) that we brought to Drupal 7 through custom code, and which are key factors in the overall value proposition of the UT Drupal Kit – layout management and a drag-and-drop editor interface.
Another key decision our team made during the early days of working on what we now call UT Drupal Kit 3, was to get more heavily involved in contributing to both Drupal core and to key contrib modules that provide specific functionality to the Kit. This decision was driven by two priorities:
- Help speed the delivery of new functionality to Drupal core by contributing to its development
- Reduce the amount of custom code needed in the UT Drupal Kit by helping support development of contrib modules which can meet our functional needs
In the past two years, the ITS team working on the UT Drupal Kit has gone from informally supporting a handful of projects on Drupal.org to being primary maintainers on 11 contrib modules, and also earning 11 issue credits for work on Drupal core. In the 2019 edition of Drupal founder Dries Buytaert’s annual “Who sponsors Drupal development?” report, the University of Texas at Austin was called out as one of the top five university contributors to Drupal development.
More important than recognition is the fact that these efforts have led to a large reduction in the total custom code footprint of the UT Drupal Kit, as well as aligning our pre-packaged features much more closely with the new best practices around layout management and page building enabled by Layout Builder and the emerging ecosystem of related contrib modules.
Looking ahead to Drupal 9 and beyond
Prior to Drupal 8, Drupal’s development model was that every new major version (e.g. Drupal 7 to Drupal 8) was allowed to change in ways that effectively made a direct upgrade path between versions impossible. Instead, site owners often found it easier to completely rebuild a new site than to try to “upgrade” to the next major version. This challenge is demonstrated by the fact that we have had to build a completely new version of the UT Drupal Kit in order to move from D7 to D8.
Starting with Drupal 8, Drupal core has moved to a “continuous innovation” model, described by Drupal project founder Dries Buytaert in his article “Making Drupal upgrades easy forever.” Rather than having to wait years between major releases for Drupal to deliver new features, Drupal site owners now get new features delivered in minor releases every six months. This strategic change relieves the pressure to start working on an all-new version of Drupal that would have previously taken years of work. Instead, Drupal 9 and beyond should be “easy” upgrades that will be triggered by the eventual need to update dependencies such as Symfony, and to remove deprecated APIs.
As a result, UT Drupal Kit 3 should have a very long lifespan, as long as we keep up with Drupal API changes and deprecations. Future major version upgrades to Drupal core should no longer require a complete rebuild of the distribution; instead, we can continue to evolve the Kit in parallel with Drupal.
What does “Beta” mean?
For the past two years, we have been working with our Customer Steering Committee, made up of Drupal developers and web development managers from around campus, to get feedback on strategic direction for the Kit and demo our work in progress. During that time, we have periodically demonstrated “Alpha” releases, mostly in order to mark milestones in our development timeline. These Alpha releases were never intended for use in building actual sites, and things were still sufficiently in flux that upgrades between Alpha versions would not have been possible.
With the Beta 1 release, we are now comfortable guaranteeing that any site build started with this version or later will have a forward upgrade path to the ultimate final release of UT Drupal Kit 3.0.
While we do not recommend use of the Beta 1 release for a production site at this time, we also have no reason to suggest waiting any longer to start creating sites that are intended for future production use.
What is still missing?
There are a number of UT Drupal Kit 2.x features that are not yet available in this Beta release. These include:
- The three “add-on” features available as separate downloads for UTDK 2:
- Team Member
- UT EID authentication
- Programmatic migration path from UT Drupal Kit 2
We anticipate that work on these features will continue well into 2020, and plan to deliver new releases on a bi-monthly basis, with UTDK 2 releases continuing to ship on even-numbered months and UTDK 3 releases shipping on odd-numbered months.
We would like to acknowledge the contributions of our Customer Steering Committee, who have patiently worked with us during the long road to this important milestone:
- Michael Arbore, College of Fine Arts
- Sam Burns, School of Information
- Marjorie Foley, Extended Campus
- Charles Leverington, University Communications
- Zach Meyer, University Communications
- Ethan Persoff, UT Libraries
- Josh Powell, Financial and Administrative Services
- Sarah Snow, College of Fine Arts
- Henry Tijerina, Office of the Executive Vice-President and Provost
Second, none of this would have been possible without the work of the actual ITS team members:
- Mark Fullmer
- Joe Goodman
- Rick Hastie
- Polo Reynaga
- Jana Tate
And finally, two members of the ITS team who have since moved on to new positions but made many important contributions during their time here:
- Tyler Fahey
- Mike Marsello
How do I get started?
The first thing anyone interested in starting with UTDK 3 should do is to head over to our brand-new documentation site:
The “What is the UT Drupal Kit?” chapter contains detailed explanations of what the Kit contains, as well as a list of differences between versions 2 and 3.
The “Getting Started” chapter includes technical requirements for running version 3, as well as detailed instructions for setting up an environment on your own local workstation, a LAMP server, or Pantheon.
If you run into problems or have questions, please check the “Support” page for available support options.