Johanne Courtright joined the Jukebox podcast to discuss her journey from agency WordPress work to building Groundworx, a collection of enhancements and blocks designed to bridge gaps she’s found in the block editor when shipping agency-grade sites.
Background and shift to Gutenberg
Johanne started with WordPress in 2011 after moving on from Dreamweaver and static HTML. Her agency work focused on custom solutions—ACF, custom post types, forms, API integrations and complex queries. As Gutenberg emerged she learned React to avoid being left behind. After initial friction, she embraced the editor fully, committing to Interactivity API and minimizing jQuery. That led her to build a set of reusable blocks and theme patterns to solve recurring agency needs.
Agency requirements vs. Core
Agencies often demand pixel-perfect control: predictable breakpoints, responsive padding and font sizing, branded color palettes and efficient UX for clients. Core WordPress aims for the 80/20 rule—solve common needs without becoming opinionated or bloated for the majority. Johanne’s experience is that Core is a good starting point for many users, but agencies need extra fine-tuning that Core doesn’t provide today. Rather than fighting non-Gutenberg approaches or third-party page builders that add markup bloat, she chose to extend the Core approach: lightweight themes, minimal CSS/JS, and plugins for features.
Groundworx: philosophy and features
Groundworx (groundworx.dev) is Johanne’s effort to provide extra tools that remain compatible with Gutenberg’s design philosophy. It contains two main areas: purpose-built custom blocks and extensions to Core blocks. Her goal was not to replace Core blocks wholesale but to augment them where agencies need more control while avoiding interference with Core’s future direction.
Notable enhancements:
– Responsive controls and multiple breakpoints for headings, paragraphs, and lists.
– Column counts and breakpoint-aware layouts for lists and grids.
– Full-height sticky options for group blocks and reverse ordering for stacks to change layout across viewports.
– Performance-focused video block improvements and responsive media settings.
– Theme.json patterns and presets to make theme swaps easier by changing values, not keys.
Custom blocks and components
Some blocks Johanne built solve repeated agency patterns: accordions that can transform into tabs at a chosen breakpoint (so tabs behave like accordions on mobile), media-content split blocks, card and card reveal blocks, and a suite of navigation-related blocks. These are intended to be flexible, semantics-friendly (so CSS grid can rearrange HTML), and performant.
Navigation reimagined
The Groundworx navigation system uses a CPT to store reusable block structures, mirroring Core’s idea but with increased customization. Johanne aimed to keep a single HTML source that gracefully adapts between desktop, mobile, and vertical layouts without duplicating menus. The navigation leverages the Interactivity API and supports options such as full-height side menus, breakpoints for layout shifts, submenus as accordions, and branding regions—giving agencies flexible but consistent navigation patterns.
Theme approach and portability
Johanne prefers to keep theme responsibilities minimal—fonts, color keys, and branding—so clients can swap themes without losing functionality. Her theme.json-driven strategy uses meaningful keys and labels so new themes become simple value swaps rather than rewriting structure. She would like theme.json to support custom variables or keys for additional palettes (e.g., more named colors for navigation), reducing the need for manual CSS variables injection.
Mindset and adoption challenges
Switching from classic theming or page builders to Gutenberg is a mindset change. There’s a learning curve: different architecture, tooling, and ways of thinking about layout and styles. Johanne observed many developers are overwhelmed by the shift, and some design frameworks (e.g., Tailwind) can clash with WordPress conventions. Once teams invest the time to reverse-engineer and understand Gutenberg, they often appreciate the flexibility and lower markup bloat.
Core, plugins, and scope
Johanne accepts that not every feature belongs in Core. Many Groundworx features target the agency 20% who need fine controls. She’s conscious of the GPL ecosystem and the possibility of ideas migrating into Core; that’s part of WordPress culture. Her priority was shipping solutions rather than waiting for Core to adopt them.
Discovery and the plugin directory
Johanne called out discovery problems in the official plugins and themes directory. She believes the directory needs better search, clearer metadata (e.g., whether a plugin supports Gutenberg natively or depends on jQuery), and curated featured listings—similar to app stores—to make it easier for new developers and users to find high-quality, compatible extensions. Better discovery would help block-based businesses grow.
Business and community
Groundworx has both free and commercial offerings. Johanne doesn’t expect overnight riches—she builds for herself first, and for others if they benefit. She sees block-based products as still maturing commercially and believes better ecosystem tooling and discovery will help block businesses scale.
Where to find Groundworx and Johanne
Groundworx is at groundworx.dev. Johanne is active on X and engages with the WordPress community there. She welcomes feedback and sees continued evolution of the block editor, theme.json, and Core features over time.
Summary
Johanne’s work shows how agencies can embrace Gutenberg while filling gaps with careful, compatible extensions. Her Groundworx approach emphasizes lightweight themes, flexible blocks, responsive controls, and usability for clients—aiming to make block-based site building faster, more reliable, and better suited to agency workflows.

