Content:
Johanne Courtright joined WordPress in 2011 after moving from Dreamweaver and static HTML sites into agency work. Early on she embraced Advanced Custom Fields, custom post types, and integrations with CRMs and APIs. Over time she migrated into heavier development—PHP, JavaScript and, more recently, React—driven by a desire to extend WordPress and solve real agency problems.
Gutenberg journey
Johanne began using Gutenberg soon after it appeared. Learning React was a hurdle—she took courses to accelerate learning—and at first faced friction integrating the new approach with legacy agency workflows that still relied on ACF. At a later agency she and a small team built a core set of blocks they reused across projects, gradually moving toward a fully block-driven approach. When she struck out on her own she decided to “go 100% Gutenberg”: no jQuery where possible, full use of Interactivity APIs and React, and building with modern block-first patterns.
Motivation for Groundworx
Groundworx (groundworx.dev) grew from frustration and opportunity: WordPress Core provides a good baseline for many users, but agencies require pixel precision, fine control over breakpoints, refined color systems, responsive behaviors, and UX efficiencies not offered in Core. Johanne set out to build enhancements and new blocks that fill those agency gaps without replacing Core—augmenting core blocks and providing new, reusable, performant components and templates.
Philosophy: modular, flexible, low-footprint
Her theme and block philosophy favors very light themes (theme.json-driven), minimal CSS/JS, and moving functionality into plugins or blocks so a client can swap themes without losing capabilities. She aims to keep keys and structure consistent so new themes become variations by changing values (colors, fonts) rather than altering keys. Blocks are built to be flexible at the HTML/CSS level (grid-friendly, movable markup) so the same block can support many layouts without being rigid.
What Groundworx delivers
Groundworx provides two main offerings:
– Core block extensions: Enhancements to existing core blocks to add agency-friendly features like breakpoint-aware settings (tablet breakpoints, multiple heading/paragraph sizes), responsive controls, column counts at different breakpoints, reverse stacking, full-height sticky group blocks, and performance improvements for media/video.
– Custom blocks: Extra blocks that solve recurring agency needs—accordion and tab systems (with tabs that can convert to accordions at a chosen breakpoint), media/content split sections, card blocks and card reveal, and a navigation suite.
Navigation work
Johanne rebuilt navigation with a focus on sharing a single HTML structure across breakpoints rather than duplicating mobile and desktop menus. Her approach uses a custom post type to store menu block compositions, letting the same menu content render responsively in multiple places. She replicated useful pieces of Core navigation but changed HTML and behaviors to allow patterns such as vertical full-height menus, accordions inside menus, and consistent fallbacks across modes. Importantly, these navigation blocks use the Interactivity API for behavior.
Design and UX priorities
Key priorities for agency use:
– Branding presets: Preset color palettes and named keys let editors pick brand colors easily, with overrides per component when needed.
– Breakpoint control: Agencies often need more granular breakpoint control than Core provides; she implements options while noting theme.json and CSS techniques (e.g., clamp()) can often mitigate the need for per-breakpoint controls.
– Ease of use: Minimize options for normal users while exposing fine control for designers and developers—avoid overwhelming editors with too many settings.
– Performance and maintainability: Keep markup and CSS lean; prefer minimal JavaScript and Interactivity API patterns over heavy frameworks or duplicated markup.
Views on Core, page builders, and adoption
Johanne prefers embracing Core’s vision rather than adding a separate platform layer on top of WordPress. She acknowledges page builders like Elementor or Divi solve many problems for their audiences, but they also produce markup and CSS structures that are harder to theme consistently and can introduce bloat. In contrast, Gutenberg’s approach keeps markup light and intended to be overridden by themes without aggressive specificity.
Adoption remains a challenge: switching mindsets from classic WordPress (or third-party builders) to block-based development is a significant jump. Many agencies and site owners find the learning curve and different conceptual model overwhelming. But once teams commit and reverse-engineer the new patterns, the flexibility and long-term benefits become clear.
What she wishes for in Core
Johanne would like more extensibility in theme.json—specifically the ability to define additional named variables or custom keys (for example additional color variables used by components like navigation) so blocks and patterns could read those keys rather than injecting custom CSS variables manually. That would streamline brand system implementations and reduce custom CSS work.
Ecosystem and discovery concerns
A recurring pain point: plugin and theme discovery. Johanne argues the WordPress directory needs better search, categorization, and promotion for new block-focused plugins and patterns. She’d like metadata to indicate things like Gutenberg compatibility, Interactivity API usage, whether a plugin relies on jQuery, and other signals useful to developers and buyers. Better curation, featured listings, and meaningful categories would help the block ecosystem grow and help businesses compete.
Commercial realities of block businesses
Johanne builds Groundworx primarily because she uses and enjoys it—she’s pragmatic about revenue expectations. Building a business from blocks is possible but not a guaranteed “fountain of cash.” The block ecosystem is maturing and more product efforts are appearing, but discovery, packaging, and buyer readiness are still evolving. She encourages focusing on solving real agency problems and shipping quality, well-documented solutions.
Where to find Groundworx and Johanne
Groundworx is available at groundworx.dev. Johanne is active on X (formerly Twitter) and prefers that platform for WordPress community interactions. She’s open to feedback and engagement there.
Closing
Johanne’s work illustrates a pragmatic path to making Gutenberg more useful for agencies: extend rather than replace Core, build flexible blocks and patterns, minimize theme lock-in, and push for better tooling (theme.json improvements and improved discovery). For agencies and developers who invest the time to learn the block approach, the payoff is cleaner markup, easier theming, and repeated patterns that speed up projects while giving clients robust editing experiences.
