UX FONT / CASE FILE: GUTENFIG

Gutenfig

Designing a bridge between Figma and WordPress. I created a Figma component library and custom plugin that turns approved page designs into production-ready Gutenberg structures.

Project snapshot

OrganizationCleveland Public Library
TimelineNovember 2025 to present
First working exportFebruary 2026
RoleUX designer, system designer, interface designer, and code-assisted plugin creator
ToolsFigma, JavaScript, WordPress, Gutenberg, HTML, and CSS

The gap between planning and production

A strong document is not automatically a strong web page. Staff often arrived with complete content, but it still needed a clear hierarchy, meaningful sections, and useful calls to action.

When too much of that thinking happened in WordPress, the editor became a design tool, development environment, and review space at the same time. Exploring another layout meant moving blocks, rewriting markup, checking the front end, and repeating the process.

Even after a design was approved in Figma, I still had to reconstruct it in Gutenberg. Design decisions and production structures lived in separate places. They needed a shared structural language.

Turning components into a working system

I realized our Figma components could represent more than visual approximations. A heading component could correspond to a Gutenberg heading block. A call to action could contain the structure used in production. Larger components could represent recurring page patterns already established across CPL.org.

I began with headings, paragraphs, calls to action, separators, media sections, and larger content layouts. Each used reusable components, auto-layout, consistent naming, configurable content, and structures grounded in real Gutenberg output.

The goal was not to reproduce every WordPress block. It was to capture the recurring patterns that consumed the most time and turn them into a maintainable design system.

Figma canvas showing Gutenfig components for a site banner, group boundaries, headings, buttons, separators, media text, events, news, and cards.
Reusable Figma components carry Gutenberg structure, so they can be arranged during page ideation without repeatedly handling block code.
Tall Figma layout test bracketed by yellow Open Group Wide and Close Group markers around headings, media, separators, and a three-card row.
Real composition testing exposed a grouping need; the yellow open and close components let enclosed content use the wider layout.

Building the bridge

Once the library was established, I designed a Figma plugin that associates each component with its corresponding Gutenberg markup. Gutenfig reads the stored block code, orders selected components by their position on the canvas, and combines them into a complete page structure.

The workflow is intentionally simple:

  1. Assemble the page with Gutenfig components.
  2. Select the completed page.
  3. Open the Gutenfig plugin and choose Copy to clipboard.
  4. Paste once into the first field of a blank Gutenberg page.
  5. Continue with the native, editable blocks and established layout.
  6. Complete or revise the copy, review the page, and publish from WordPress.

Make the components. Build the page. Copy. Paste.

Gutenfig does not synchronize Figma and WordPress or publish directly to the website. It creates a deliberate bridge while keeping the final publishing decision inside WordPress.

The development was code-assisted. I researched Figma’s plugin documentation, defined the workflow, designed the interface and behavior, tested the output, and iterated until it reliably solved the production problem.

Three views document the handoff from collaborative Figma planning to native WordPress blocks and a reviewed WordPress result.

Figma canvas with a tall People’s Playlist page selected beside the Gutenfig plugin, where Copy to clipboard is available.
1. Copy from Figma — With the assembled page selected, Gutenfig copies its embedded Gutenberg structure to the clipboard.
WordPress editor for The People’s Playlist with a Group block selected and its layout controls visible in the block settings sidebar.
2. Paste into Gutenberg — A single paste into a blank WordPress page creates the corresponding native, editable block structure.
Long WordPress page demonstration titled The People’s Playlist, showing the planned header, card grid, events, featured posts, help panel, and footer.
3. Published WordPress result — This demonstration page retains the planned layout after paste and editorial work; it is not the later MusicCat-powered final product.

Planning pages before building them

Gutenfig makes page planning feel more like thumbnailing. I can compare content hierarchies, section arrangements, calls to action, and visual pacing before committing to a structure in WordPress. Collaborators can respond to realistic page patterns while they are still easy to rearrange.

The People’s Playlist Figma page was a real client-facing planning demonstration assembled with Gutenfig components. The client and I used the page and a demonstration video to discuss content structure and possible layouts.

The project later expanded into a much larger citywide local-music platform. The final product remained The People’s Playlist and was implemented through the third-party MusicCat application. Gutenfig did not build, export, import, or publish that final product; the Figma artifact documents early collaborative planning and rapid layout exploration, not the shipped interface.

A Cleveland 230 starter-page exploration also applied the Gutenfig system during early planning. Cleveland 230 became the library’s primary campaign project for the year and evolved into the broader One Cleveland campaign, with work distributed across many contributors and responsibilities. The Figma artifact is evidence of an early application of Gutenfig, not proof that Gutenfig exported or published the campaign.

Because the system begins with established patterns, it creates a more consistent foundation for semantic structure, responsive behavior, spacing, hierarchy, and calls to action. It does not replace accessibility review, but it reduces the decisions that must be reinvented on every page.

Tall Figma page exploration titled The People’s Playlist, with a Cleveland Public Library banner, yellow group markers, card rows, events, and featured-library sections.
The People’s Playlist planning demonstration supported client discussion about content structure and possible layouts. It was not the final interface; the expanded product was delivered through the third-party MusicCat application, not built or published by Gutenfig.
Tall Figma starter-page exploration titled About Cleveland’s 230 List, showing introductory copy, nomination details, a call to action, and criteria panels.
This Cleveland 230 starter-page exploration documents an early application of Gutenfig before the work expanded into the broader, multi-contributor One Cleveland campaign. It is planning evidence, not a published Gutenfig page.

Results and real-world use

Gutenfig changed page production from an open-ended building exercise into a more deliberate design process.

  • Faster exploration: I can compare page structures without repeatedly rebuilding them in WordPress.
  • Earlier decisions: Hierarchy and pattern selection can be resolved before implementation.
  • Fewer revision cycles: Collaborators can respond while the page is still easy to change.
  • One-to-one output: The Gutenberg structure reflects the approved Figma page.
  • Reusable knowledge: Common production patterns live in a maintained system rather than in memory or unrelated pages.

After these early applications, changing project responsibilities and team priorities reduced Gutenfig’s immediate use. Broader use and development may resume later.

Gutenfig also became the subject of my Code4Lib 2026 presentation. A venue change placed the talk in the main hall before the full conference audience. The live demonstration received an enthusiastic response, especially from attendees interested in connecting Figma components to usable Gutenberg output.

That response confirmed that the method could be understood and adapted by other small web teams, libraries, and content-heavy organizations.

Selected slides from Tyrone’s Gutenfig presentation introduce the project, then explain the append, copy, and paste workflow.

Dark presentation title slide with the word Gutenfig and the subtitle Collaborative Page Building at Cleveland Public Library.
Presentation introduction — Gutenfig: Collaborative Page Building at Cleveland Public Library.
Dark slide titled Gutenfig: Reducing Friction Between Design and WordPress, combining Figma and Gutenberg graphics into a Gutenfig mark.
The framing slide presents Gutenfig as a way to reduce friction between Figma design work and WordPress.
Presentation slide showing a Figma component beside the Gutenfig modal containing WordPress block markup, labeled Step 1: Append.
Presentation step 1 — Gutenberg markup is attached to the corresponding Figma components.
Presentation slide showing selected Figma components and the Gutenfig Copy to clipboard control, labeled Step 2: Copy.
Presentation step 2 — Selected Gutenfig components are copied through the plugin.
Presentation slide showing a rendered WordPress block layout with headings and buttons, labeled Step 3: Paste.
Presentation step 3 — The copied structure is pasted into WordPress for continued editing and review.

What I learned

Gutenfig began without a complete plan. I committed to building a Figma library, noticed a deeper relationship between design and production patterns, and followed that observation into a functioning tool.

The project gave me confidence in my ability to carry an idea through its full arc. I defined the system, designed the interface, worked through technical constraints, tested it on real pages, published work with it, and presented the method to a national conference.

Next, I would expand the library, strengthen documentation and testing, add useful variants, and make handoff easier for other designers and editors. The system will continue to grow from repeated production needs instead of trying to anticipate every possible WordPress block.

The lasting lesson is not simply that I can build a Figma plugin. It is that I can recognize an opportunity inside an ordinary workflow, develop it into a coherent system, and carry it into practical use.