Tools

The following are tools we use at 10up. This list is not comprehensive and will grow and change over time. Generally, we encourage engineers to use these tools in favor of others. Rules governing tools to be used and packaged with a client site will be much stricter than those used on internal projects.

Local Development Environments #local-development back to top

At 10up, we use Local WP to build and interact with local environments. Local WP makes it easy to spin up, manage, and interact with local WordPress environments. It’s available for Mac, Windows, and Linux.

Local WP replaces Docker and WP Local Docker as the recommended development environment at 10up.

Scaffolding #scaffolding back to top

10up WP Scaffold - Developers can use 10up Project Scaffold to quickly create themes and plugins with our recommended tools and many of our best practices already in place.

Task Runners #task-runners back to top

10up-toolkit - 10up Toolkit is 10up’s official asset bundling tool based on Webpack 5. It comes with support for most everyday requirements within 10up projects.

Webpack - Webpack is a bundler for JS/CSS. It’s beneficial when 10up Toolkit can’t handle a project’s requirements.

Package/Dependency Managers #package-managers back to top

Composer - We use Composer for managing PHP dependencies. When we need to pull in external PHP libraries, Composer provides an easy way to install and update those.

The WordPress Packagist repository mirrors all public WordPress plugins and themes, allowing an engineering team to easily manage them using Composer.

Version Control #version-control back to top

Git - At 10up we use Git for version control. We encourage people to use the command line for interacting with Git. GUIs are permitted but will not be supported internally.

Command Line Tools #command-line back to top

WP-CLI - A command line interface for WordPress. This extremely powerful tool allows us to do imports, exports, run custom scripts, and more via the command line. Often, this is the only way we can affect a large database (WordPress.com VIP or WP Engine). This tool comes bundled with Local WP.

Accessibility Testing #a11y-testing back to top

We use a variety of tools to test our sites for accessibility issues. WebAim has some great resources on how to evaluate sites with a screen reader.

We’re also a fan of a few browser tools that lend us a hand when it comes to testing areas like color contrast, heading hierarchy, and ARIA application.

Visual Regression Testing #vrt back to top

We use visual regression testing to ensure code changes don’t have unforeseen repercussions. This provides a helpful visual aid to check against CSS changes, plugin updates, and third-party script updates.