Skip directly to content

Award Category 
Drupal Version 
This website looks great on mobile devices!
Brief Overview 

The State of Georgia’s migration of 49 sites from Vignette to Drupal 7 is one of the most ambitious projects attempted in the public sector in Drupal, and was done with resounding success. Georgia is the first large-scale state government migration to Drupal, built on a powerful multi-site platform, completed on time and on budget.

Launch or Publication Date 
Friday, April 27, 2012
Key Modules, Theme, and Distribution Used 
Field collection Formatter Field Purge & Expire Migrate Migrated Content Flag Migrate UI Context UI OpenPublic
Why these Modules, Theme, and Distribution were Chosen 



Field collection

Field Collections were used through the GTA project, namely to put structured information together into a group. This powered complex slides for rotators (each slide has images, links, and text), locations, and provided multiple file and link options when entering data (e.g., entering a node reference or a url). The result was an improved user interface for content creators, with items logically grouped, while allowing us to programmatically manipulate data structures.


Formatter field

Sometimes content types are used to provide content creators with different layouts or features for what is fundamentally the same data. This can work well or simplify content creation, but in some instances it's better to present one type of content with lots of display options. We used Formatter Field to build one content type and data structure for lists, but then gave content creators the options to switch between different options (alphabetical listings, FAQ listings, data tables.) The result is that we have one user interface for lists, and, as lists change and grow, they can change formatting options to present the data in the best possible way.


Purge & Expire

State Agency websites can serve up vital content that needs to be ready as soon as it's published. At the same time, they require a good caching strategy to provide a fast experience to site visitors. To ensure that the update is re-cached once content is published, the team used Purge and Expire. This way, the varnish cache is immediately cleared when content is added or updated. In addition, we wrote special rules for these modules to trigger cache clears for ancillary content. When an important press release goes out, or is updated, not only is the varnish cache forced to be up to date for that node, but we also make sure press release listings on the homepage are up updated, too.



Migrate module was used to help manage the migrated content from Vignette to Drupal.  


OpenPublic Suite:

The Georgia platform was built on OpenPublic, a distribution of Drupal, built specifically for the needs of federal, state, and local government sites. OpenPublic powers thousands of sites for the public sector and nonprofit sector, but never before has it powered a platform as extensive as Georgia’s.  OpenPublic gave Georgia a “jumpstart” on the platform since it allowed the team to focus on critical customer requirements, instead of standard features which are typical “up front” requirements for most government sites.

Owner's Name 
Georgia Technology Authority
Development Company 
Phase2 is committed to improving the way the world's most influential organizations achieve their goals through open source technology. We are a web strategy and development company with offices in Washington, DC & New York, and teams across the country. Focusing on web strategy, design, and development, our team has extensive knowledge in the areas of content management, open data integration, community applications, APIs and custom application development. Phase2’s team of software developers, creative designers, business analysts, and project managers also are passionate contributors to the Drupal community -- building several widely used Drupal distributions including OpenPublish, OpenPublic and Open Atrium. Find out more at
Why Drupal Was Chosen 
The state of Georgia is the first and largest state government run on Drupal and OpenPublic. This project has broadened awareness of Drupal’s ability to handle prominent, large-scale migrations. It also serves as a great example of Drupal’s capability to extend technologies in related sites, including custom responsive design and tight integration with other web services such as Google Search Appliance, to provide a better experience for site visitors. Phase2 leveraged Features and Drupal’s core architecture to provide site-specific features on the platform for sites that have highly specialized content such as the Attorney General’s Office, Georgia Bureau of Investigation, and GeorgiaGov. Drupal will save GTA an estimated 5 million dollars in the next 5 years.
Describe the Project (Goals, Requirements, and Outcome) 


Utilizing the OpenPublic Drupal distribution as a starting point, Phase2 and the GTA team devised a strategy to migrate, rebuild, redesign, and support the State of Georgia’s outdated content management system, and transform it into a single cohesive system.  All 49 sites were completed on time and within budget.  In addition, because of the user-friendly and intuitive qualities of the platform, 6 additional sites have been created independently by GTA content administrators.



Prior to building their new platform, GTA hosted more than 60 sites in Vignette 6 and 7 for the state's agencies. The number of stakeholders in the project was extremely high due to so many sites involved. Although the migration could be planned and executed, convincing the stakeholders to move their sites to the new platform required feature parity with the older systems, as well as new features to make the transition worthwhile for GTA agencies.

Ultimately, this meant that there were some specific platform requirements:

  • A single code base with multiple databases so that updates and new features could be easily distributed to sites that are unique

  • Features for security and role-based permissions to meet the State of Georgia's existing high standards

  • Google Search Appliance across all agency sites  to provide integrated search results with platform and non-platform sites

  • Improved ease of use and reliability

  • More consistency in design and features, without compromising flexibility for agencies

  • New features to help agencies fulfill their communication goals needed to be included

Specific sites, such as GeorgiaGov and the Georgia Bureau of Investigation, had important, unique features to support use-cases specific to each agency’s mission and purpose.

example of unique features: specific content types, catalogued agencies and counties

GBI- case content type- listed out identified cases

attorny gen. opinions content type

- Georgia Burea of Investigation publishes specific case information to the public with a custom interface for site visitors. This required building a new content type and a set of views to allow visitors to filter and find specific case information. In addition, this content, including menus and blocks to support, had to be discretely featurized so that it could be deployed and enabled for  a single site cleanly without other sites on the platform seeing the feature.

- The Attorney General’s office has a similar type of unique publication, Opinions, that are legally binding documents, that have their own sorting and view for their special format. This allows users to look

- Document Headings are a unique opt-in feature allowing sites to create a library of letterheads to add to Press Releases and Opinions. Once enabled, this Feature allows for combinations of images and custom text to be added to the top of content, and sites can specify several options for content creators. In addition, the content type is restriceted based on role, so only the most trusted users can modify or update the official letterhead for the office.


By setting up the codebase to heavily use the features module, we were able to create a shared code repository that still allowed for unique functionality for different agencies or use cases.For example, the Georgia Bureau of Investigation uses a "Case" content type with some specialized views. To include this feature in the platform, the view and content type were wrapped up in a Features-based module distributed to all sites, but only enabled for the Bureau of Investigation sites. This pattern was repeated throughout the project to deliver targeted functionality on top of a single, unified code base. The high watermark for adding extra features to the base platform was GeorgiaGov, a site which has unique content types, search integration, and front end features to create a single entry point for the Georgia citizens

The platform includes infrastructure solutions that deliver not only important business value, but can also lower the cost of development and ownership for individual agencies. None of the use cases above are atypical for any governmental agency, but might be difficult for an individual agency to build or deploy by themselves. The shared code base ensures that even the smallest agencies get first class features.

Common Platform Components

Beyond the shared infrastructure, the GTA sites have some unique platform features that bind the platform sites together and provide a consistent, branded experience. This  consistency comes from specific features that help streamline the content experience:

  • Shared Footer: the footer on all GTA platform sites is a multi-column display of a Drupal menu. This menu, however,  is built in a single GeorgiaGov control site and then distributed to all other sites and cached. The Distributed Blocks module was used for this.

  • Emergency Notifications: Like the footer, a trigger-able emergency notification can be created on GeorgiaGov and is then automatically distributed to agency sites using the Distributed Blocks module as well. This mechanism, although rarely used, was designed to help distribute information about statewide emergencies and bulletins such as Amber Alerts.

  • Distributed Taxonomy: Based on the State of Georgia's enterprise business architecture, the GTA team worked with Phase2, and developed a hierarchical taxonomy to describe all services and content produced by Georgia's agencies. This taxonomy is, controlled from a single site with additions and deletions. As the hierarchy is extremely large and four levels deep, a new auto-complete module--(Hierarchical Term Reference Autocomplete) was created to help Georgia Content Creators select a term.   As a result, Georgia's agencies are now using a shared categorization tool to index all their content, available in the site’s meta-keywords (via MetaTag) and that can be leveraged later for enterprise wide content categorization.

These features take the standard ease-of-use of Drupal's menu and taxonomy system and help them move up to an enterprise level. Since rolling out the new system, Georgia Technology Authority has had a smooth transition with no increase in support requests even during the days when the new system was being vetted. With appropriate training, Drupal's ease of use and leveraging core concepts made for an easy content entry experience across all agencies.

Platformwide Security Features

The base platform itself uses several standard solutions to meet the state's security policies that are common to all sites:

-Fisma compliant Acquia environment, role based security permissions

  • Password Policy 2.0: a pending patch to the Password Policy module adds additional configuration features for special characters, password uniqueness, concurrent session management, and inactivity time-outs to help Drupal meet stringent security requirements

  • Workbench: provided a simple first class workflow that allows sensitive content, such as press releases, to be reviewed before publication. Scheduling is also available, so that important announcements from any agency can be timed in the CMS

  • Purge and Expire: one of the major concerns for a massive platform architecture is performance across all sites, which means caching. However, state agencies often publish critical information that cannot be delayed. We used and provided some patches to integrate with workbench, Purge, and Expire. This ensured that when an important Press Release is published, the cache is cleared for that item ,and listings including promotions on the homepage.

    Agency Toolstack:

    In spite of the shared features of the code base, each agency needed to have a their own unique web presence. This not only included homepages and banner content, but each agency had unique promotional needs throughout the site. We were able to accommodate this by developing a suite of custom boxes for use with Contexts.  Now agencies can easily place the types of items they want on their homepages and throughout their site. The toolstack here included:

    • Contexts: a common contrib module on many Drupal sites, the GTA platform includes several featurized pre-written rules to help target specific sections of the site and important listing and landing pages. Accordingly, many agencies don't even need to write a new context condition, but can leverage existing reactions to customize their site.

    • Entity Boxes: there are many different ways to handle layout in Drupal, we chose Entity Boxes because they work very well with contexts to create multiple discrete page elements. As a result, agencies have their choice of six unique types of rotators fit for use in any space on the site, icon, thumbnail, or image-less manual curation boxes.  These can be used to tease content, promote photos, and customize "call to action" promotions with custom icons for simple house-ads for agencies with minimal bandwidth. In addition, we leveraged existing contexts and conditions to place numerous invisible (to anonymous users) boxes throughout the site. Authenticated site editors see these and the help text prompts them to click the box to add house ads and features if they desire. Even without editing contexts, boxes can be used to promote content inline and it will logically appear in sections of the site.

    • Context UI: Contexts and regions can be a bit abstract so we updated the Context module for a smoother interface. The new UI has a useful listing of existing and new possible boxes, as well as displaying regions more simply with buttons to quickly add boxes to a specific region. The result is that it's easy to manipulate homepages for each agency site individually, and no two agencies have the same homepage content or layout.

    • Google Search Appliance: the GTA uses Google Search Appliance to provide search results for platform sites. The appliance was chosen over SOLR because it was already being used to index sites, including non-platform sites hosted outside the GTA. The result is a great search experience for each agency, and a roll-up search experience on GeorgiaGov for all sites on the platform and not.

    The above features were targeted at providing a better user experience for agencies and to improve on the capabilities in the old CMS. In addition, one of our goals was to add some additional features to provide some incentive for agencies to go through the difficult migration process:

    • YouTube Video integration: Some agencies put video content on YouTube to help cross promote it, but had to fall back on using embed codes and other things to place YouTube content on their sites. A new video content type combined with the Video Embed module made cross-listing video as easy as copying a URL. The result is that agencies can continue to use the popular video service, and still get a beautiful video gallery on their own sites.

    • Photo Galleries: Photo Galleries are a common request and appear in several forms. We built a straightforward, easy-to-use gallery and some nice promotional features for individual photos in custom listings and spaces. A custom feature shows all photos uploaded to the site in a stream at the bottom of the main media page. This provides a gallery-like experience when adding good photos to content.

    • Events: Previously, agencies were generally relying on iFrames to pull in google calendars or an equivalent. While this is still possible, the new platform has an Events content type with time and location information, and boxes and listings to promote upcoming events automatically for content creators. Given that most agencies have a steady, but modest stream of important events, this integrated calendar provides a perfect solution for publicizing events and making a history of past events available.

    • Webforms: We provided webforms and node embed to help agencies put forms anywhere on their site. This is slowly being used to replace many third-party web forms so that agencies can control their own data. In addition, we created a custom module “webform_deter “ to screen visitor submissions for patterns associated with personally identifiable information. This simple step makes it less likely that anonymous visitors might expose information that they do not need to when contacting state agencies.  In addition, it integrates with the existing web forms so the existing data from third party web forms is now easily managed within the CMS with additional features.

    These new features, beyond empowering agencies and codifying some of the more advanced social-media engagement that agencies were using,  the added features should make content creation easier.  As a result, citizens of Georgia can expect information to flow more easily.


    As mentioned, the Georgia Technology Authority had 60 agency sites that needed to be migrated from a mix of Vignette 6 and 7, with some unique configurations in each. In order to accommodate the migration, a subset of the team, lead by our partners at MediaCurrent, began developing migration scripts using OpenPublic as the target destination. This allowed the team to begin working on the migration while information architecture and site building was underway for the GTA platform.

    The benefits of having a working drupal site to migrate content into so early in the project were numerous. Not only did it allow the migration team to build and test core Drupal migrations such as migrating menus, but it was an excellent way to check the information architecture against the content.

    With the goal of avoiding as many unexpected issues as possible during the actual migrations, we incorporated a pre-validation round where content could be inspected, edited, and, if necessary, re-run on a development environment. The content editors completed pre-validation on the development environment, then turned the sites over to the GTA web team for pre-validation on a staging environment. Using detailed tracking sheets (set up as open and accessible Google docs which both Phase2 and GTA could access) both teams were able to complete one-to-one site page reviews and log issues, which could then be tracked and fixed.

    The final process involved a two-pass human check of all content, fixing many small errors in the original system, and a final content review by GTA and the agency in house team. Throughout this process, all content got additional improvements as deemed necessary by the agencies. The result was that the human labor of a content audit could be distributed a bit more, and many menu and content updates were done directly in the new CMS prior to launch. Some agencies used this opportunity to clean up content, improve their homepages, or add additional new content. Some agencies moved through the process simply to ensure accuracy and that no mistakes were introduced by moving the content.

    Beyond the technical migration script, the migration module(Migrate) was used to provide many useful features:

    • Tracking the URL of the original content for comparison

    • Creating a temporary checkbox to indicate migrated vs. original content in the new system

    • Creating robust logs for the migration of each individual node

    A complete content survey of over 34,000 pieces of content is impossible, but a content audit combined with careful review of errors and unexpected data meant that nothing was lost in the transition to the new site. As the migration process improved, the target moved to early builds of the GTA agency sites.  As a result of the efforts of the developers and the teams tasked with reviewing the migration, all agency sites felt comfortable to launch as scheduled with confidence in their content.

    Mobile and Design

    Style Tiles, (a design tool created by Phase2 alum Samantha Warren) helped us quickly create eight separate themes without having to create full comps for each department’s site by giving agencies a set of “tiles” to choose from and make alterations to, instead of fully designed “comps” that would require multiple design iterations.  A design system was developed, where two compositions were made for each theme, and Style Tiles were used by the front-end team to style the sites.  Providing GTA agencies with flexible designs to pick from saved a lot of time up front.  These design strategies were essential to efficiently designing all of’s 55 sites.  Collabrative effort on agencies sites,

    The future of the GTA Platform can best be seen in the responsive, mobile-first, design of the new GeorgiaGov. The site is built on the same codebase as all agency sites, but has some additional features and a design that leverages the underlying technologies more fully.

    The GTA team set out to design a site that would be the "face" of the Georgia web presence and give citizens a web destination that could be reached from any device to get to any agency site or content. The result was a simple, elegant design that put search first and looks good on mobile to desktop clients. GeorgiaGov uses the one-box feature of the Google Search Appliance and some custom indexing in Drupal to provide type-ahead matching and search suggestions.  Search results pages are divided up to show useful FAQ-like information as well as links to any agencies related to the search.

    The overall implementation for mobile search consists of three pieces:

    • Custom search content type called "Popular Topics" that have indexed aliases and keywords based on search analytics

    • Auto-suggest powered by a custom Drupal index of the content weighting aliases and keywords to get fine tuned results

    • Google Search Appliance matching based on, among other things, metaphone matching to screen out differences in pluralization and spelling that might inhibit semantic matches

    The result has been a dramatic decrease in the amount of searching necessary to find key content, and much more traffic direction to content on GeorgiaGov or to agency sites for specific questions. GTA's usability testing showed an overall decrease in search times by users as well as completion of common tasks like looking up information on driver's licenses and permits.

    In addition to this constant refinement by the GTA team based on search analytics, they also use historical data and analysis to select specific topics to promote on the homepage in addition to the search.

    GeorgiaGov has become a destination site for quickly finding content from all agencies, and its responsive design makes it friendly for all types of devices. It is an example of  taking the base platform and extending it for  specific use cases.  GeorgiaGov is also a great example of extending technologies for all related sites, including custom responsive design and tight integration with other web services such as Google Search to provide a better experience for site visitors.

    This project was a team effort, the GTA web team took a very active role in the platform development, design and migration of sites. Their outstanding attention to detail was applied to every phase of the project, and is a large part of its success. Their team brought impressive design skill and strong testing to the project, along with an intimate knowledge of the needs of each website.

Type of Nomination 
Additional developers 
Development Company 
Development Company