Extending functionality with AI-assisted design & code
UX CASE STUDY | DAMIEN LUTZ
Overview
About
Context:
This was self-directed work on my own WordPress sites—LCD Lab & LCD Academy, and my personal website—using AI to extend the platform’s functionality past its native limitations, so I could ship better UX without the cost of a developer.
My Role:
Designer, researcher, and problem-solver, with AI as a coding collaborator.
Tech Stack:
WordPress, WooCommerce, WP-Members, Total Theme / WPBakery, Popup Box plugin, Code Snippets plugin
Key Outcomes
Faster problem-to-solution cycles
A designer who can scope a front-end interaction problem, prototype a fix, and validate it without a developer handoff reduces friction in small teams and early-stage products
More productive developer collaboration
Understanding how components interact with the broader tech stack means clearer briefs, better questions, and fewer back-and-forth cycles when working with engineers
System awareness that reduces downstream problems
Tracing how theme, plugins, and platform components interact helps a designer catch problems earlier and produce solutions that hold up outside the design tool
Introduction
WordPress limited the experience—I used AI to push past it
WordPress’s default tools weren’t enough to deliver the experience these products needed—a generic profile page, a silent subscription cut-off, and no way to see what marketing actually worked. Each gap needed a real fix, not a workaround.
For each one, I described the problem to ChatGPT—what I wanted, what I was seeing in the dashboard, in plugin settings, in debug logs — then worked through a solution together, testing, failing, and iterating until it worked.
The process is the same one I use for any design problem—describing the problem, reasoning through constraints, iterating, testing. The output just happens to be code.
1. A better user dashboard
Problem
A reference tool that forces a full page load for every content category breaks the flow it was designed to support.
The Sustainable UX Buddy gives designers quick access to planet-friendly design strategies across 16 design categories, from content and styling to interactive components and AI. To be useful, it needs to work the way designers actually work: open alongside a design tool, on a second screen or mobile, with fast switching between categories.
The default WordPress/WPBakery approach would have sent users to a new page for each category—a full page load every time, breaking the flow of the tool entirely. For a reference tool used mid-task, that was a dealbreaker.
Problem
A disjointed dashboard did nothing to show users what they’d bought
What I built
A dedicated “My Power Ups” page that surfaces each user’s purchased courses and tools as visual cards, easy to find and clearly labelled.
Using a custom code snippet and WordPress shortcodes, I created a dedicated “My Power Ups” page that pulls in each user’s purchased courses and digital tools, displayed as visual cards, clearly labelled, with direct access links. This new page feels more intentional, and answers the first question any new member asks: “So, where do I find my stuff?”
Solution
A “My Power Ups” page surfaces purchases as clear, labelled cards


Sustainable UX Buddy slides out a drawer on click
Process
- Described the problem to ChatGPT, along with what plugins I was using and what data they exposed
- Worked through which hooks and shortcodes could surface the right content, wrote a snippet, dropped it into the Code Snippets plugin, and tested it
- Iterated a few times on layout and conditional logic for different product types
- Cross-browser checks
Time
Under 1 hour, including testing across browsers
2. Enabling customers to easily renew subscriptions
Problem
No expiry warning for subscriptions, and no reassuring renewal journey.
Courses and tools on the platform use time-limited access, typically 12 months. When access expired, there was no warning. Users would simply lose access and have to find their way back to the store to repurchase as if they were a new customer—no acknowledgement they’d already done the course, no reassurance their progress was saved, no path back that felt considered.
Problem
No expiry warning, and no reassuring way back after access lapsed
What I built
A “Renew Access” badge on expiring course cards, plus a dedicated renewal journey that reassures returning users their progress is saved, so re-enrolment feels like a continuation.
A two-part build:
- An expiry badge — a “Renew Access” label appears on any course or tool card approaching or past its expiry date, so users see it on their dashboard before they lose access, not after
- A dedicated renewal journey — rather than the standard product page, the flow includes clear messaging that this is a renewal, that course progress is saved, and what they’re getting for another 12 months
Solution
An expiry badge plus a renewal journey that confirms progress is saved
Process
The hardest of the three. The solution needed data from three plugins — Sensei LMS (courses), WooCommerce (purchases and expiry), and WP-Members (user access) — plus the theme’s page builder, none of which were built to talk to each other this way.
I dug through cPanel file structures and debug logs to find the right data and work out which plugin owned what. ChatGPT helped interpret errors and write the code, but the design decisions were mine. Testing meant manually simulating different expiry states across browsers and devices.
Time
1 week to build, 1 week of testing. As a first real coding and debugging project, a lot of that time was learning the environment—I’d estimate 1 week now (alowing time for overnight testing).
3. Conversion tracking without the bloat
Problem
No way to track which emails actually drove sign-ups or sales, without adding analytics bloat.
The analytics plugin I use on the platform is deliberately lightweight — a low-data, low-energy choice that aligns with my low-carbon design principles. The trade-off is it doesn’t track granular events. I had no way of knowing whether a promotional email had led to a registration or a sale, which made it hard to know what was actually working.
Problem
No way to track what drove sign-ups, without adding analytics bloat
What I built
Lightweight button-tracking that tags users into the right email segments on click, no third-party scripts, just the specific conversion data I actually needed.
A small piece of tracking code added to specific call-to-action buttons—the ones leading to a registration or purchase. When a user clicks one, they’re tagged and added to the appropriate segment in Sendy (my email platform), so I can see which segment they came from and whether that action completed. No third-party scripts, no heavy analytics layer.
Solution
Lightweight click-tracking tags users into the right email segment
Process
- Described the journey to ChatGPT — which buttons, which plugin handled the email lists, what the segment structure looked like in Sendy
- Wrote a lightweight tracking script together
- Tested by manually clicking through the journeys and checking the Sendy dashboard to confirm the right tags were applied
Time
2 hours, including testing
Outcomes
Across the three projects, real gaps in the member experience were solved with a combined build time of roughly two weeks, with two of the three projects done in under a day each.
The bigger result was a new way of working: a senior designer moving from “this is broken” to “here’s a working fix” independently, which matters more in a small team than the size of any single fix.
A confusing dashboard solved in under an hour
The “My Power Ups” dashboard replaced a generic WooCommerce profile page with a clear, branded view of what each member had actually bought, in less time than briefing a developer
A silent churn risk turned into a retention path
The renewal project was the hardest of the three, pulling data from three plugins never designed to talk to each other, but it closed a real gap and turned an abrupt cut-off into a reassuring continuation
Marketing data gained ethically
The conversion tracking fix answered a real business question, which emails actually drove sign-ups or sales, without adding the heavy third-party scripts that would have conflicted with the platform’s low-carbon design principles
