The Summit County Board of Elections is the administrative body tasked with conducting fair and honest elections within Summit County, Ohio, as well as providing election and voter information to the county's populace.
We worked alongside the Board to produce a complete overhaul of their online presence, and to improve the overall experience for people looking for election & voter information within Summit County.
What we did
- Web Design
- Web Development
- Web App Development with Vue.js
- User Experience
- Wordpress Theme Design
- Custom API Development
The Board's user base for the website was basically anyone that was old enough to vote. This meant that the site had to be simple to navigate and understand by everyone from young tech savvy college students to users that might be more comfortable finding information offline than on.
While current & upcoming election information served as the primary drive for traffic, a variety of user-generated reports for voter and past election information made up the bulk of the content on the new site. Because of the sensitivity of the information and the methods in which the data had to be handled, we were tied to the Board's current processes in terms of where and how we were able to access data for these reports.
Visually, we kept the design of the new site light and open. We used large copy text and high contrast to ensure legibility, and favored simple editorial page layouts. Sub-pages of the site are broken down into specific sub-topics instead of building a single page containing all top-level content and can be navigated to from the site's primary drop-down navigation. Separating the content this way serves to help users to find exactly what they're looking for from the primary navigation and keeps pages short and to the point.
To grab the data needed to generate user reports, we needed to adhere to some of the processes and methods that were already in place while still being able to retrieve the data in a format that could be used and manipulated on the new site. After a strategy and discovery process, we built an API to parse out the needed data based on the structure used on the old version of the site. With the API built, we now had a platform-agnostic method of requesting report data to organize and manipulate to our needs, (which included filtering voter and election data and exporting the results to HTML, ASCII, CSV and PDF formats). Each report form on the site utilizes Vuejs to communicate with the API and retrieve data, and PHP libraries to generate the appropriate output file to be downloaded by the user.
Depending on the data requested, some of the forms being output end up being quite large. We're talking 3000+ page PDF files, which generated their own set of problems with memory file size limits being exceeded. This project gave us an opportunity to jump into the deep end of optimization practices and understanding memory leaks and file limits, and we've come out of it happy with the results and having learned a ton.
Previously, current & upcoming election information was being hard-coded into the site, which was unweildy and annoying. We opted to build a custom Wordpress theme for the new site that utilized custom post types for the election data, and a custom plugin to act as a liason between our newly-built API and the rest of the site. Coupled with the Updraft Plus plugin for routine backups, Wordpress has the added benefit of being a reasonably secure platform when maintained and a well-documented CMS to allow content updates from the Board.
Overall, this was one of the more unusual builds we've done. We're extremely grateful to have had the opportunity to partner with the Board, and really proud of the result.