CTtransit homepage

CTtransit is the Connecticut Department of Transportation (CTDOT)-owned bus service. CTtransit operates bus services throughout CT – a total of 130 routes serving over 25 million passenger trips each year to a diverse community.

The CTtransit website is vital communication channel to a broad audience that includes not just riders, but also vendors, job seekers, policy makers, as well as CTtransit and CTDOT staff. On a typical weekday, roughly 5,500 users visit the website to get information and to interact with CTtransit.

In 2014, CTtransit recognized the need to develop a new, more engaging website to meet the demands of an audience continually more tech savvy and connected. Three Connecticut companies worked in partnership with CTtransit to make this happen:

Why Drupal was chosen: 

The new website - launched in July 2016 and built in Drupal 8 - replaced a legacy website that did not use a content management system (CMS) as a framework. For the new website, CTtransit wanted to start with a CMS framework that it could grow with. Essential interests for the technology selection included:

  • Open source technology stack, to limit licensing costs
  • Extensible platform upon which custom solutions could be developed, as needed
  • Multi-lingual support
  • Accessibility support

Drupal was a clear choice as it met these objectives and was already a well regarded solution by the transportation sector. This is not to mention that each of the companies working on the project had many successful Drupal implementations in production.

The timing of the project was fortunate in that discovery, specification and design took place in the run-up to the Drupal 8 release in November of 2015. When development commenced, we were able to pace the build-out of requirements with evolving improvements in Drupal 8 and release of contributed modules.

Describe the project (goals, requirements and outcome): 

For the new website, CTtransit had several goals in mind to correct shortcomings of the legacy website. What follows is a summary of the more significant solutions achieved by the new site:

Mobile optimization

Site analytics demonstrated that three quarters of site visits originated from mobile devices. With such high device traffic, mobile accessibility was imperative. The site's custom theme leveraged Bootstrap for its out-of-the-box mobile accessibility and time-saving theming features. As well, we were already very familiar with Bootstrap though its use in Drupal 7 project and its strong support in the Drupal community and beyond.

Mobile optimization went beyond the need for content to fit legibly within the viewport of the user's device. Pages needed to load quickly. Beyond Drupal's native caching and performance optimizations, the caching features of the NGINX web server are utilized. We also needed the get users to the content they need more quickly. A significant innovation in the CTtransit website is the prominent access on the home page to the most readily requested content: planning a tip, reading transit alerts and finding a schedule.

Procurement workflow

In the CTtransit Drupal 8 website we introduced a process for managing Procurement content (a/k/a RFPs) and a process wherein vendors could “Register” to express their interest in bidding on a procurement. Once registered, the vendor would have access to documents related to the procurement. A CTtransit contact for the Procurement would in turn receive an email acknowledgement of the registration, and then be able to communicate with prospective vendors over the RFP life cycle. This included the capacity to automate email notifications to vendors when procurement content is amended.

To accomplish this in Drupal 8, we implemented:

  • Role based access to site for the users inquiring about a Procurement, and a role for members of the Procurement team at CTtransit
  • A structure for Procurement content entry by the Procurement team, and User Interfaces for the display of the content on the website
  • A registration workflow starting with a “Register” button on a Procurement node and ending with the user being able to log in to access RFP documents
  • A view of Procurement inquiries with the capacities to filter by RFP and export the list of vendors who registered to participate in the bid process for the RFP.

Key to the Procurement workflow implementation are Drupal core modules such as Views, User, and File. Contributed modules such as Email Registration, Profile and CAPTCHA, and IMCE. Custom module development was undertaken to integrate the registration workflow into each Procurement page, and to automate the aforementioned flow of email notifications.

The CTtransit website on an iPhone 6
CTtransit smartphone animated gif

A Procurement node with workflow actions highlighted
Procurement node screenshot

Why these modules/theme/distribution were chosen: 

Lingotek provides integration between Drupal and the Lingotek translation management system.

CSV Serialization gives the Procurement team the ability to download Procurement inquiry logs in CSV files format.

Scheduler gives content administrator the option to schedule the publication and un-publishing of content. This is particularly important for Alert content.

As the site was migrated from a legacy platform with different URL conventions, the Redirect module was an essential SEO tool to ensure that visits to deprecated website pages were redirected to content in the Drupal website.

Organizations involved: 
Community contributions: 

For the Trip Planner feature on the home page, a custom integration with the Google Map Directions API was programmed. The result of this programming is the 'Google Directions' module' available at https://www.drupal.org/sandbox/mikebrooks/2805775.

The development team contributed to Drupal 8 core and contributed module issue queues over the course of the project.

Project team: 

Other contributors to the project were, from their respective companies:

Lan Tran
Ali Eslami

Wyant Simboli Group
Julia Wyant
Gareth Mitchell