Case 10 Taoti Creative

Election Center

The Election Center trains and certifies election officials. Its site is Bedrock WordPress with a Timber theme, WP Rocket and Redis, and visual regression tests in its CI folder.

  • Redis
  • Apache
  • Sass
  • GitHub Actions
  • Lando
  • WordPress
  • Timber
  • Twig
  • Advanced Custom Fields
  • Yoast SEO
  • jQuery
  • Gulp
  • webpack
  • Babel
  • Composer
  • MariaDB
  • Behat
  • BackstopJS
  • Nightwatch
  • PHP
  • AWS
  • Node.js
  • JavaScript
Election Center home page: We serve those who serve democracy
PHP
8.3
Server
Apache 2.4
Database
MySQL 8.0

01

What it's written in

  1. PHP 36%
  2. JavaScript 29%
  3. SCSS 29%
  4. HTML 7.1%

Estimated from the stack, not measured from the source. Measured figures replace this once the repository is counted.

02

The stack 31

Server

  • WordPress Bedrock layout, Composer-managed
  • PHP 8.2 to 8.4 Lando runs 8.3
  • Timber 2 Twig views
  • Twig
  • Composer 2
  • ACF Pro 6.8
  • Yoast SEO 28 with ACF content analysis
  • FileBird media folders
  • Duplicate Post

Performance

  • WP Rocket 3.17
  • Redis Object Cache
  • EWWW Image Optimizer

Security

  • WP 2FA
  • Taoti Security Scanner kept in place by the security-update workflow

Theme build

  • JavaScript
  • jQuery 3
  • Gulp 4
  • Sass
  • webpack 5
  • Babel
  • PostCSS Autoprefixer and cssnano

Testing

  • BackstopJS visual regression, .ci/test/visual-regression
  • Behat with Mink and the Chrome extension
  • Nightwatch manual GitHub Actions run
  • PHP_CodeSniffer WPCS 3 and PHPCompatibility across PHP 8.2, 8.3 and 8.4

Delivery

  • GitHub Actions deploy, promote, clone, security update and code checks
  • AWS deploys, database and file clones, CDN clears
  • Lando Apache 2.4, MariaDB 11, Redis, Node 24
  • Apache 2.4
  • MariaDB 11
  • Node 24

I'm listening if you're talking

A bug, a new build, a data question, a site that needs to be faster or a full rebuild. Tell me what's going on.

Let's see how to collaborate.