Johanne Courtright, a developer who started with WordPress in 2011 after moving from Dreamweaver and static HTML sites, joined the WP Tavern Jukebox podcast to discuss her work extending the block editor for agency workflows. Over the years Johanne has specialized in custom queries, forms, CRM integrations, and increasingly the block editor and React. Her project Groundworx focuses on filling gaps she sees in Core for agency needs: responsive layouts, refined breakpoints, colour systems, navigation, and more.
From Classic to Gutenberg
Johanne learned WordPress on the job and embraced Gutenberg early, despite the need to learn React. She found the initial transition challenging but ultimately rewarding: once she stopped fighting the new paradigms and leaned into them, she saw the potential for cleaner, more flexible theming and block-driven site building. At agencies she worked for, a hybrid approach often persisted—ACF and classic PHP patterns alongside blocks—so when she began working on her own she committed to a full Gutenberg stack (including the Interactivity API and minimal jQuery).
Agency needs vs Core’s scope
A central theme of her work is that Core aims for the 80/20 rule: features that serve most users belong in Core, while agency-level fine-tuning often does not. Agencies require pixel-perfect control, predictable breakpoints, reusable brand palettes, and UI efficiencies for editors. These requirements frequently exceed what Core ships by default, so Johanne built Groundworx to provide that extra layer without opposing or breaking Core’s philosophy.
Groundworx philosophy
Groundworx is built to extend and enhance core blocks rather than replace them wholesale. Johanne added subtle but powerful capabilities—breakpoint controls, responsive settings on headings and paragraphs, column counts per breakpoint, reverse stacking, full-height sticky groups, and video performance tweaks—aimed at giving designers and agencies the fine-grained control they need. She’s careful to avoid introducing changes that would conflict with Core if similar features are added upstream.
Blocks and extensions
Groundworx includes two kinds of offerings:
– Purpose-built custom blocks: features not in Core or where Johanne wanted a specific behavior—e.g., tabs that gracefully transform into accordions at a chosen breakpoint, card and reveal blocks, media/content split blocks.
– Enhancements to Core blocks: added responsive controls and layout tools that plug into existing blocks so editors can maintain familiar workflows with added flexibility.
Her approach favors flexible HTML and CSS—blocks should be adaptable so their markup can be reflowed using grid and CSS rather than locked into rigid structures. That makes it easier to create themes that are lightweight and interchangeable.
Navigation and Interactivity
Navigation was a particular area of focus. Johanne built a navigation system that mirrors some Core ideas—blocks stored via a custom post type and reusable—but offers more layout modes and custom behavior. She aimed to avoid duplicating menus for mobile and desktop; instead, her navigation reflows from the same HTML. She implemented custom branding, menus, submenus, links, and spacers as blocks that can be composed in the editor and styled with theme.json and CSS. Interactivity is handled with the Interactivity API, avoiding heavy JS frameworks and keeping behavior performant.
Themes, theme.json, and separation of concerns
Johanne prefers extremely light block themes: minimal CSS and JavaScript, with most styling driven by theme.json and values for colours, fonts, and spacing. That way, a theme swap can be mostly about changing tokens (palette, typography keys) rather than reworking markup or locked-in styles. She advises using meaningful property keys in theme.json so swapping values can transform branding without breaking layouts.
She would like theme.json to be more flexible—allowing custom keys or variables beyond the current palette and presets so plugins and blocks could consume custom tokens (e.g., multiple navigation colours) without resorting to manual CSS variables injection. This would make reusable, branded blocks easier to support across different themes.
Discovery, ecosystem and business realities
Johanne spoke about the difficulty of discovery in the WordPress plugin and block ecosystem. She criticized wordpress.org’s plugin and theme listings for poor search, keyword stuffing, and a lack of curated, featured recommendations that help new projects get noticed. Better discovery and clearer metadata (does a plugin support Gutenberg? Does it rely on jQuery?) would help developers and agencies find suitable solutions and help new block-based products gain traction.
On building a business with blocks, Johanne is pragmatic: she doesn’t expect block products to be instant cash generators. Groundworx exists because she needed the tools herself; commercial potential is welcome but not the only goal. She noted the ecosystem is still forming around blocks and that we may be approaching a moment where block marketplaces and better discovery unlock larger business models—akin to how app stores changed mobile software.
Adoption barriers and advice
The main barrier to wider Gutenberg adoption, she said, is mindset and learning curve. Developers who are used to the “old way” must unlearn patterns and reverse-engineer the block model to see how to build reusable, flexible blocks and themes. Tools like Tailwind can clash with WordPress’s patterns; Johanne prefers hand-crafted SCSS and minimal CSS in her blocks to maintain clarity and interoperability.
She also emphasized restraint in what to add to Core: many agency-level features aren’t broadly necessary for the average user. Plugins and block libraries can serve the 20% that need more sophisticated control, while Core remains focused on broad, simple foundations.
Looking forward
Johanne plans to keep releasing Groundworx components and a starter theme.json as open source to help agencies get going faster. She hopes for better plugin/theme discovery on wordpress.org, clearer signals for block compatibility, and more flexible theming tokens. She remains confident in the block editor’s direction and committed to building within the Core vision rather than around it.
Where to find Johanne
Johanne is active on X and maintains the Groundworx site (groundworx.dev). She welcomes conversation and feedback from the community.
Conclusion
Johanne Courtright’s work on Groundworx demonstrates a pragmatic, agency-focused approach to extending Gutenberg: add flexible, performant, and reusable tools that address real-world needs—breakpoints, palettes, navigation, responsive behaviors—while keeping themes lightweight and respecting Core’s scope. Her efforts highlight both the power and the current gaps in block-based WordPress development, and the ongoing evolution of an ecosystem that’s still learning how to surface and support block-first solutions.