<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[PatternFly - Medium]]></title>
        <description><![CDATA[Build scalable user experiences in the open | Red Hat’s open source design system - Medium]]></description>
        <link>https://medium.com/patternfly?source=rss----3e56d5dc1325---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>PatternFly - Medium</title>
            <link>https://medium.com/patternfly?source=rss----3e56d5dc1325---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Wed, 20 May 2026 17:15:23 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/patternfly" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[A new path for PatternFly.org]]></title>
            <link>https://medium.com/patternfly/a-new-path-for-patternfly-org-b3536f514f2f?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/b3536f514f2f</guid>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[usability]]></category>
            <category><![CDATA[information-architecture]]></category>
            <category><![CDATA[user-research]]></category>
            <category><![CDATA[navigation]]></category>
            <dc:creator><![CDATA[Erin Donehoo]]></dc:creator>
            <pubDate>Thu, 14 May 2026 13:50:51 GMT</pubDate>
            <atom:updated>2026-05-14T13:50:50.990Z</atom:updated>
            <content:encoded><![CDATA[<h4>A look at our community-guided navigation redesign</h4><figure><img alt="A white map is placed atop a dark gray background. On the map is a dotted line leading to a red X. Beside the map is a lo-fi image of a navigation menu." src="https://cdn-images-1.medium.com/max/1024/1*L3CtrJqE9TyypMVqYQR_3g.png" /></figure><blockquote><strong><em>Note:</em></strong><em> The changes described in this article are currently available for preview at </em><a href="http://staging.patternfly.org"><em>staging.patternfly.org</em></a><em>. Links in this blog will be updated when they go live on PatternFly.org.</em></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><a href="https://medium.com/patternfly/welcome-to-patternfly-6-5c372f2fd5de">Since we launched PatternFly 6</a>, we’ve continued to expand our website to keep pace with new product patterns and technologies. But as we released more documentation, it became clear our navigation was struggling to keep up. With dozens of new guidelines needing homes on <a href="http://patternfly.org">PatternFly.org</a>, our information architecture wasn’t just making it harder to place new content — it was becoming a barrier to the efficiency and consistency we strive to provide.</p><p>As PatternFly’s content designer, I knew we needed a strategic change, but that change couldn’t happen in isolation. To ensure our new direction was driven by data rather than my own assumptions, I led a multi-phase research study to uncover how our website could better serve our community.</p><p>After months of iteration and analysis in 2025, our new navigation is more effective and scalable. Here, I’ll share my research findings, the specific changes I’ve made, and the four core principles that guided our redesign.</p><h3>Research approach and results</h3><p>To build a more user-focused navigation, I led a study with 23 total participants who identified as a designer or developer. I used a mix of methods to ground decisions in how Flyers actually use PatternFly:<strong> card sorting </strong>to understand mental models and explore new ways to group content, and <strong>tree testing</strong> to measure how successfully and confidently participants could find information using only the navigation menu.</p><h4>Testing and iteration</h4><p>My research followed a multi-step process to move from our baseline to a new design, involving both experienced and fresh perspectives:</p><ul><li><strong>Tree test 1 (the baseline): </strong>13 participants completed 10 tasks using the existing navigation menu. This first step identified exactly where people were getting lost and established our starting metrics for success and confidence.</li><li><strong>Card sorting:</strong> I worked with 4 PatternFly maintainers through 3 rounds of card sorting. This revealed how maintainers closest to the system think about content organization.</li><li><strong>Refining the path: </strong>I ran two additional rounds of tree testing (with 12 and 19 participants respectively) to iterate towards a final design. I rephrased tasks to reduce bias and tested new navigation areas. To ensure the new system worked for everyone, I invited back original participants to measure improvement and also recruited novice PatternFly users (recent team hires) to see how the site performed for those less familiar with our system.</li></ul><h4><strong>Findings</strong></h4><p>The results showed that a new direction was a clear win. While our existing navigation had a solid <strong>70.7%</strong> success rate, the new design raised that to <strong>76.4%</strong>.</p><p>What stood out even more was the jump in user confidence–on a 5-point scale, average ratings increased from <strong>3.62 to 4.15</strong> between our baseline and final tree tests. While some findability gaps remained — particularly around terminology for core concepts — the data confirmed I was on the right track. I used the final round of qualitative feedback to make one last set of refinements, ensuring the experience felt simplified but stayed functional.</p><figure><img alt="A side-by-side comparison of the previous PatternFly website navigation and the new navigation. The new navigation most notably uses horizontal dividers and bolded headings to separate navigation items into 3 sections." src="https://cdn-images-1.medium.com/max/1024/1*B-e8pJybSGAPsZE-MUIc9w.png" /><figcaption>The before/after comparison of our nav shows how my changes translate visually.</figcaption></figure><h3>The “Why”: 4 principles that guided the design</h3><p>The numbers only tell part of this story. Qualitative feedback from our participants uncovered 4 clear principles to drive the final design. Not every insight lent itself to a clean before/after metric, but all shaped what you see today.</p><h4>1. Clear labels drive confidence</h4><p>When a navigation label describes a distinct destination, users feel confident. When it’s vague, they hesitate. Regarding our “Accessibility” heading, one user noted: <em>“This feels very forward and clear!”</em> In contrast, conceptual headers like “Foundations” and “Guidelines” often felt indistinguishable to users.</p><h4><strong>The changes:</strong></h4><ul><li><strong>I made key entry points action-oriented</strong> — like Get started, Get help, and Get involved — to put the user’s goal first.</li><li><strong>I elevated help resources from behind generic headers</strong> and created dedicated pages for Contact us, FAQs, Bug reports, and Contribution guides.</li></ul><figure><img alt="2 website nav items are shown expanded: “Get help”, which contains “FAQs”, “Contact us”, and “Report a bug”, and “Get involved”, which contains “Community” and “Contribute”." src="https://cdn-images-1.medium.com/max/1024/1*GtaVnoCBq513cxNwnbMpkA.png" /><figcaption>The new “Get involved” and “Get help” sections contain important support resources.</figcaption></figure><h4><strong>The results:</strong></h4><ul><li>Removing guesswork from top-level labels was a major driver of our overall success rate increase.</li><li>Participants navigated to help/support resources (like bug report and contact information) much faster than in our baseline test.</li></ul><h4>2. Structure breaks down complexity</h4><p>This study confirmed that long, unstructured navigation can be overwhelming. To fix this, I applied a UX principle called “<a href="https://www.nngroup.com/articles/chunking/">chunking</a>” to break content into smaller, related groups. This helps our users recognize the right path rather than trying to memorize a list.</p><h4><strong>The changes:</strong></h4><ul><li><strong>I organized items into three labeled, non-clickable groups</strong>–Learn, Design and develop, and Connect–separated by horizontal dividers.</li><li><strong>I moved items into their logical categories. </strong>For example, Topology and Component groups moved into Extensions, and Layouts and Tokens moved into Foundations and styles.</li></ul><figure><img alt="The new PatternFly navigation menu is shown, with labeled, blue annotation markers pointing to the dividers and group headers." src="https://cdn-images-1.medium.com/max/1024/1*iY4ViL5ls1FiUloc9-1hag.png" /><figcaption>Organizing navigation items into conceptual groups makes it easier to find what you need.</figcaption></figure><h4><strong>The results:</strong></h4><ul><li>Participants appreciated the breathing room. As one put it: <em>“Classifying the menu items makes the number of options seem less overwhelming.”</em></li><li>Across the redesign, top-level navigation items decreased from 16 to 13 — even as four new destinations were added.</li></ul><h4>3. Our design language weakens confidence</h4><p>PatternFly is a robust system, but our language for core concepts — like components, patterns, and extensions — isn’t always self-explanatory. One participant admitted: <em>“I don’t understand the difference between Component groups, Extensions and Patterns.”</em></p><h4><strong>The changes:</strong></h4><ul><li><strong>I ensured that every major nav section has an updated Overview page</strong>. While we aren’t renaming our core features right now, these pages provide concise definitions and use cases to help users navigate our system’s complexity.</li></ul><figure><img alt="The “Foundations and styles” section is shown expanded, with the nested “Design tokens” section also expanded. Both the parent and child items have their own “Overview” page." src="https://cdn-images-1.medium.com/max/1024/1*nqjnvJHThxqwEvz74FY_jA.png" /><figcaption>Overview pages are standard across the site and provide introductory info about major sections, while cross-linking to related resources.</figcaption></figure><h4><strong>The results:</strong></h4><ul><li>Because this study focused on navigation-only interactions, I didn’t specifically test the effectiveness of this new page content. We’ll monitor the success of these changes through Google Analytics and user feedback surveys as our team continues to explore how users perceive our core concepts.</li></ul><h4>4. “Irrelevant” content creates noise</h4><p>I observed participants mentally filtering our navigation based on their roles. If a navigation item felt like a <em>“designer thing,”</em> developers would often ignore it as noise–even when the content was relevant to both roles. The issue isn’t the content itself, but the perception of who it’s for based on how it’s labeled.</p><h4><strong>The changes:</strong></h4><ul><li><strong>I organized all functional design and development documentation into its appropriate core concept</strong> like Components, Extensions, or Foundations and styles. By using these clear, conceptual “buckets,” I hope to reduce the feeling that any part of our system is job-specific.</li></ul><figure><img alt="The “Design and develop” navigation section is shown, which contains the core features of PatternFly, like “Components”, “Patterns”, “Accessibility”, and more." src="https://cdn-images-1.medium.com/max/1024/1*D5lFnQOsWrpIgVfJORYX_Q.png" /><figcaption>The “Design and develop” section is streamlined to organize pages into their proper parent item.</figcaption></figure><h4><strong>The results:</strong></h4><ul><li>Some of these role-based assumptions are deeply rooted, so this work goes hand-in-hand with efforts to clarify design language. This insight has also opened doors for future exploration, such as role-based personalization or a site-wide context selector, to help users find exactly what they need for their specific job.</li></ul><h3><strong>A snapshot of key changes</strong></h3><p>Here’s a consolidated view of every change I made — for full URL-level detail, <a href="https://docs.google.com/spreadsheets/d/e/2PACX-1vTnt7Muq-AJ2cJEl_wJGzgIeg50FThFtDa5OlVi7GT7Suh3SD8PY2TltE6hgnKlnCcyG5V5q-DlcGjb/pubhtml">refer to this Google Sheet.</a></p><h3><strong>Top-level navigation updates</strong></h3><h4><em>Renamed:</em></h4><ul><li>Design foundations → Foundations and styles</li><li>PatternFly AI → AI</li><li>UX writing → Content design</li><li>Developer resources → Developer guides</li></ul><h4><em>Relocated:</em></h4><ul><li>Charts is now under Components</li><li>Component groups &amp; Topology are now under Extensions</li><li>Tokens, Layouts, &amp; Utility classes are now under Foundations and styles</li><li>Training is now under Get started</li></ul><h4><em>New:</em></h4><ul><li>About us, Releases, Get help, and Get involved are new top-level items, surfacing content that was previously buried under Get started</li></ul><h3><strong>Standardization and consistency</strong></h3><ul><li>“About [Section]” pages (like those in AI, Charts, and Patterns) are now simply called Overview</li><li>Several pages were renamed for immediate clarity: Upgrade → Upgrade guide, Tokens → Design tokens, Writing for all audiences → Accessibility and localization</li><li>Content design gained a more structured organization, with Grammar and Writing guides as distinct sub-sections replacing the previous flat list</li></ul><h3>Explore the new design today</h3><p>Redesigning our navigation has been a collaborative, iterative journey — and you can experience it right now. The new navigation is available for preview at <a href="http://staging.patternfly.org">staging.patternfly.org</a>!</p><p>We invite you to explore our new site structure and see how these changes affect your workflow. While the research phase is complete, navigation is never a one-time project. As you use the new navigation, we want to hear from you in our <a href="https://www.feedback.redhat.com/jfe/form/SV_9MKBjq8H7muINMy">user feedback survey</a>–your insight keeps PatternFly flying.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own?</em><a href="https://medium.com/p/af90715e556d"><em> Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=b3536f514f2f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/a-new-path-for-patternfly-org-b3536f514f2f">A new path for PatternFly.org</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[PatternFly’s AI marketplace]]></title>
            <link>https://medium.com/patternfly/patternflys-ai-marketplace-7b78aa5ead64?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/7b78aa5ead64</guid>
            <category><![CDATA[marketplaces]]></category>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[cursor]]></category>
            <category><![CDATA[claude-code]]></category>
            <dc:creator><![CDATA[Jeff Puzzo]]></dc:creator>
            <pubDate>Fri, 01 May 2026 13:57:36 GMT</pubDate>
            <atom:updated>2026-05-04T13:55:07.685Z</atom:updated>
            <content:encoded><![CDATA[<h4>Stop hoping AI understands your design system and start teaching it</h4><figure><img alt="A blue PatternFly logo is placed in a circle at the center of the image. There are dotted lines coming out from this middle circle in all directions. At the end of each dotted line is another logo, including logos for Figma, Cursor, Claude Code, and general code and accessibility icons." src="https://cdn-images-1.medium.com/max/1024/1*nRzzKkHAXqqHfRQx6jUiXQ.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>“Wait — Claude Code has a marketplace?”</em></p><p>That was the question that started a new chapter for PatternFly. We’d been sharing PatternFly context with AI models for a few months — Cursor rules, reference docs, an MCP server. All helpful, and genuinely a step forward from where we started. But the context lived in static files that users had to manually copy into their projects, and it only worked in one tool.</p><p>A marketplace changed that equation. Instead of asking developers to clone a repo and copy files into their project, we could package PatternFly knowledge into plugins that install with a single command. It also meant reaching Claude Code users for the first time. We didn’t know exactly what we’d build yet, but the opportunity was clear: a better way to distribute what we know, and a new platform worth exploring.</p><figure><img alt="An image of a CLI, where “Marketplaces” is shown as selected. Details about the Marketplaces options are listed, including “6 available plugins”. A “browse plugins” command has been entered and a few plugin options are shown." src="https://cdn-images-1.medium.com/max/1024/1*EWB43lBQWTi2q597WEu5CQ.png" /></figure><p><em>So we started building.</em></p><h3>Low-hanging fruit first</h3><p>The first two skills we created were deliberate: a coding standards agent and a unit test generator. We picked them because they addressed the most common friction points of following component composition conventions and Testing Library best practices, but also because they demonstrated two different modes of working.</p><p>We created the coding standards agent to run automatically. Once you install the plugin, it shapes every response your AI gives — carrying PatternFly conventions into every conversation without anyone having to ask.</p><p>The unit test generator works differently. Instead of running automatically, you invoke it when you need it to generate a test file. That distinction (agent = always-on knowledge, skill = on-demand action) became foundational to how we continued to build out our plugins.</p><h3>Then the floodgates opened</h3><p>Once the first plugin worked and the file format was clear, something unexpected happened: our team saw the pattern that emerged from our initial plugins and just started building. No one had to be convinced. No one needed a training session. They just looked at the existing skills, understood the format, and started writing their own.</p><p>The simple format itself was part of why our team was able to take action so quickly — a skill is just a SKILL.md file with some frontmatter and markdown. If you know a workflow, you can teach it to an AI model.</p><p>Then, Cursor rolled out marketplace support too. So we waved them aboard: same skills, same agents, both tools. That was important to us. We wanted to meet developers where they already were, not ask them to switch tools for the privilege of better PatternFly output. If a team used Cursor, we wanted the same marketplace to work without extra configuration or separate install processes.</p><p><em>Here’s what that looks like on the Cursor side — same plugins, same skills, different tool:</em></p><figure><img alt="The PatternFly AI Helpers are shown within the Cursor plugin marketplace." src="https://cdn-images-1.medium.com/max/1024/1*uvFRK50ZYFK_yEJRytH6MQ.png" /></figure><p>What started as one plugin quickly became several. If you’ve ever worked on an open source project and felt the moment when the project stops being yours and starts being the team’s, that’s what this felt like. I’d open the PR queue in the morning and three new skills would be waiting for review. Someone automated issue tracking with duplicate detection across PatternFly repos. Someone else created Figma-to-code change tracking. Another person automated the release version update workflow that had been manual for years. The contributions kept coming, each one from someone who knew a specific PatternFly workflow and decided to teach it to an AI model.</p><p>What made that possible wasn’t heroics, it was scaffolding. Someone who’d never written a plugin before could open CONTRIBUTING-SKILLS.md in the morning and have a working skill merged by the afternoon. No build step, no SDK, no framework to learn — just a markdown file with some frontmatter that describes a workflow.</p><p>The barrier to entry wasn’t “can you build a plugin?” It was “can you describe what you know?”</p><h3>What we got wrong (and fixed)</h3><p>Not everything landed cleanly.</p><p>Our original plugin names were product-prefixed and vague. One of them was a catch-all called something like “workflow” — workflow for what, exactly? If you saw it in a marketplace list, you’d have no idea whether it helped with issue tracking, release management, or something else entirely. We adopted a decision test: if someone browsing the marketplace can’t tell what they’re installing from the name alone, the name is wrong.</p><p>That test killed the old names and led to new, domain-based names, with the catch-all split into two focused plugins. It was a breaking change, but the marketplace was new enough that we wanted to get it right early rather than live with confusion later. The new names — react, design-foundations, figma, issue-management, repo-management, a11y — each tell you exactly what you’re getting before you click install.</p><p>Early contributions also mixed up the skill-versus-agent distinction, which was fair — the line isn’t obvious until you get it wrong. Some skills read like reference documentation instead of a method of producing usable output. Some agents tried to generate deliverables instead of shaping the AI’s thinking.</p><p>We landed on a litmus test: can someone use the result directly? That’s a skill. Is it knowledge the AI should always carry? That’s an agent. Once we named it that clearly, the contributions started sorting themselves.</p><figure><img alt="A text-based image that says “Skill: Can someone use the result directly? vs Agent: Is it knowledge the AI should always carry.”" src="https://cdn-images-1.medium.com/max/1024/1*yDUvn7ZWZKMukSRxw_Vqgw.png" /></figure><p>And then there was SKILL.MD. Capital letters. This convention worked fine on macOS, but broke on Linux. This led to a one-character fix and a good reminder: <em>if you only test on one operating system, you’re going to ship bugs the other one finds</em>.</p><h3>What it looks like when it works</h3><p>Here’s what all this adds up to: someone asks Claude to build a PatternFly page with the React plugin installed and gets back properly nested components, correct design tokens, and no custom CSS. No corrections needed. No code review comments about component hierarchy. No hunting for the right token variable name.</p><p>That’s dozens of skills across several plugins doing their job. The success isn’t because any one skill is magic, but because together they carry enough PatternFly knowledge that the AI stops guessing and starts getting it right.</p><p>The difference between “AI that kind of knows PatternFly” and “AI that actually builds PatternFly correctly” turned out to be a set of well-written markdown files.</p><p>Our plugins also pair well with the PatternFly MCP server — a local service that gives AI tools access to component docs and prop schemas on demand. Skills tell the AI how to work, and the MCP gives it the reference material to work with.</p><figure><img alt="The file tree structure for the ai-helpers repo, where the react / skills folder is expanded to show the available skills." src="https://cdn-images-1.medium.com/max/339/1*r1ky5SAm6fQGyuh42lbNfw.png" /></figure><h3>What’s on the horizon?</h3><p>There’s an empty plugin in the marketplace called a11y. It’s scaffolded with no skills inside — just a README that says “contributions welcome.” That’s deliberate. Accessibility is a first-class concern in PatternFly, and we wanted the taxonomy to have a home ready when the right contributor shows up. We’re waiting for someone who lives and breathes WCAG to come fill it in. If that’s you, the scaffolding is already there.</p><p>That empty plugin says a lot about where this goes next. The skills we have today are version one. They work, but we already know where to push them. The unit test generator, for example, produces solid tests, but it doesn’t yet know how to handle PatternFly’s more complex composite components like Wizard or DataList without some hand-holding. Every time someone runs a skill and bumps into a limitation like that, it’s a signal about what to improve for the next person.</p><p>We’re still finding new things to teach our AI tools. That’s the part that keeps us going — the marketplace isn’t a finished product, it’s a living system that gets smarter every time someone contributes what they know. And honestly, watching an AI tool go from “kind of helpful if you babysit it” to “actually understands how PatternFly works” has been one of the more satisfying arcs of my year.</p><h3>Your turn</h3><p>The marketplace is open source and we’re actively looking for contributions. You don’t need to be a plugin developer or know anything about AI tool internals. If you can describe a workflow in markdown, you’ve written most of a skill.</p><p>Explore the <a href="https://github.com/patternfly/ai-helpers">marketplace on GitHub</a>. Install a plugin, try it in your own project, and see if it changes how your AI tools handle PatternFly code. If something doesn’t work right, tell us — that’s how the skills get better. And if you know a workflow well enough to describe it — <a href="https://github.com/patternfly/ai-helpers/blob/main/CONTRIBUTING-SKILLS.md">contribute it back</a>. Remember that teammate who already knows PatternFly? You could be the one who teaches them something new.</p><p>In Claude Code, two commands get you started:</p><blockquote>/plugin marketplace add patternfly/ai-helpers<br>/plugin install react@ai-helpers</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own? </em><a href="https://medium.com/p/af90715e556d"><em>Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7b78aa5ead64" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/patternflys-ai-marketplace-7b78aa5ead64">PatternFly’s AI marketplace</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[PatternFly and the Model Context Protocol]]></title>
            <link>https://medium.com/patternfly/patternfly-and-the-model-context-protocol-c842b13cfeb6?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/c842b13cfeb6</guid>
            <category><![CDATA[mcps]]></category>
            <category><![CDATA[mcp-protocol]]></category>
            <category><![CDATA[mcp-server]]></category>
            <category><![CDATA[mcp-client]]></category>
            <dc:creator><![CDATA[CD Cabrera]]></dc:creator>
            <pubDate>Thu, 30 Apr 2026 16:02:39 GMT</pubDate>
            <atom:updated>2026-04-30T16:04:12.831Z</atom:updated>
            <content:encoded><![CDATA[<h4>The bridge between AI tools and our design system</h4><figure><img alt="A bridge between two sides: one is a white circle with a black “AI sparkle” icon, and the other is a white circle with a blue PatternFly logo." src="https://cdn-images-1.medium.com/max/1024/1*FkOQFFvx_ZWjbJAIsxSoAQ.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>A major barrier to using generative AI in PatternFly design and development is the “context gap.” While large language models are powerful, using them in an open environment often results in the generation of solutions that already exist or that deviate from established patterns. For PatternFly, this limitation caused early AI-generated prototypes to appear visually correct, while inadvertently violating design system rules.</p><p>The <a href="https://github.com/patternfly/patternfly-mcp">PatternFly Model Context Protocol (MCP)</a> provides a solution to this challenge by providing models with a definitive source of truth for our design system.</p><h3><strong>The spark</strong></h3><p>Our MCP journey began with research into which existing workflows were effective and which were not. During workshops and early experiments with AI-integrated editors and CLI tooling, we saw a recurring problem: tools frequently suggested components that did not exist or props that had been deprecated for years.</p><p>This was not a failure of the underlying technology, but <em>a failure of context.</em></p><p>Early attempts to bridge this context gap relied on manual guidance, such as curated Markdown libraries and detailed prompt instructions. These experiments proved that without a living, authoritative link to our design system, generated output would be less reliable and consistent. This realization led to our first MCP prototypes, which focused on providing tools with direct access to definitive documentation.</p><h3><strong>Scaling the solution</strong></h3><p>As this context project grew, our initial MCP prototype required a more robust foundation in order to more effectively reduce invalid output. To create a stronger base, our team integrated PatternFly component schemas using JSON and Zod descriptions. These schemas made it possible for tools to validate suggestions against actual PatternFly APIs.</p><p>The move from simple data access to formal validation was a turning point for the MCP. We could draw from past architectural patterns and refactor the project into a production-ready tool. To prepare the MCP for release, we introduced a more modular architecture by focusing on:</p><ul><li><strong>Core isolation: </strong>We isolated the server core to ensure stability and simplify maintenance as our tool library expanded.</li><li><strong>Plugins for extensibility: </strong>By treating tools, resources, and prompts as plugins, we created a system that could grow from a simple documentation repository to a comprehensive suite of resources–without bloating the core server.</li><li><strong>Resources: </strong>Research into MCP resources helped us deliver documentation more effectively, manage token usage, and refine tool performance.</li></ul><p>During this scaling period, the MCP matured through early releases, which allowed us to validate the experience before reaching a wider audience within Red Hat and the PatternFly community.</p><h3><strong>Reaching maturity with our 1.0.0 release</strong></h3><p>Moving the project to the PatternFly GitHub organization marked a shift toward long-term stability. To prepare the MCP for its first official release, we focused on refining the ergonomics of the MCP protocol to ensure a seamless setup experience for designers and developers.</p><p>As a foundation to our 1.0.0 release milestone, we migrated simple tools to MCP Resources. This change made it possible for users to search PatternFly documentation and schemas as a structured library, further closing the context gap.</p><h3><strong>Today and beyond</strong></h3><p>Today, the PatternFly MCP (v1.0.0) serves as a bridge between AI-driven tools and the design system. While there is still work to do, like adding dynamic API integration and resources as tool responses, the project validates the idea that working with AI within an organization requires a definitive source of truth: one that helps clarify AI’s role in the software development lifecycle.</p><p>A lifecycle where proposals are drafted, code is written and reviewed, and teams actually refresh their understanding of the system after release. AI assistance becomes more reliable when those tasks stay tied to the same grounded context. The PatternFly MCP is the bridge between essential human-centered understanding and AI assistants.</p><p>For teams starting their own journey with creating MCPs, our experience can provide you with a clear path:</p><p>1. <strong>Start with the context:</strong> Make sure AI has access to the right information before all else.</p><p>2. <strong>Ground it in schemas:</strong> Use formal validation to focus results.</p><p>3. <strong>Build for growth:</strong> Use a modular architecture to support new tools and resources in the future.</p><p>For more details and guidance, check out our documentation on PatternFly.org.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own? </em><a href="https://medium.com/p/af90715e556d"><em>Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c842b13cfeb6" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/patternfly-and-the-model-context-protocol-c842b13cfeb6">PatternFly and the Model Context Protocol</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[A dual mandate for design system maturity]]></title>
            <link>https://medium.com/patternfly/a-dual-mandate-for-design-system-maturity-53f2b744df1d?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/53f2b744df1d</guid>
            <category><![CDATA[design-systems]]></category>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[product-design]]></category>
            <category><![CDATA[ux]]></category>
            <dc:creator><![CDATA[Jan Wright]]></dc:creator>
            <pubDate>Tue, 13 Jan 2026 19:07:37 GMT</pubDate>
            <atom:updated>2026-01-13T19:07:21.348Z</atom:updated>
            <content:encoded><![CDATA[<h4>How PatternFly balances the roles of infrastructure and internal product</h4><figure><img alt="A blue, double helix crosses across a light gray background at a up-right diagonal. In the middle of the helix is a black magnifying glass, with the PatternFly logo at the center." src="https://cdn-images-1.medium.com/max/1024/1*9SuH9VuSjyrLwTjl4swxZg.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>Design systems have become increasingly central to product strategy across software-based organizations. For some, a design system is simply infrastructure — a repository of guidance, a component library, and documented patterns that quietly support development. For others, the system is treated as a product, complete with a focused team, intentional development practices, and delivery models designed to support internal users.</p><p>But a mature design system that provides strategic value is neither just a product nor just infrastructure. It is both.</p><p>At PatternFly, we’ve been following this dual mandate and reaping the benefits of both perspectives. We’ve learned that embracing this duality is the only way to create a system that lasts — and one that the organization values.</p><p>Here is how we balance these roles at PatternFly, and how this dual mandate can benefit your organization.</p><h3>Design systems as infrastructure</h3><p>When a design system functions as infrastructure, it offers organizations a critical foundation that accelerates product delivery, reduces organizational risk, and prepares for change and evolution. It becomes a utility upon which other deliverables rely.</p><p>As infrastructure, a design system’s users are dependent on the system, relying on its rules to design, develop, and ship their own work. Their dependence demands stability, reliability, and continuous maintenance that requires the design system to be more “living” than a static, shelf-bought UI kit.</p><p>PatternFly operates as strategic infrastructure in three key ways:</p><h4><strong>1. Accelerating delivery and optimizing resources</strong></h4><p>By centralizing the development of UI elements, individual product teams don’t have to reinvent the wheel. PatternFly standardizes patterns from specific product spaces, creating reusable resources that save development time across Red Hat’s entire product portfolio.</p><p>As infrastructure, PatternFly supports diverse, complex workflows. <a href="https://medium.com/patternfly/why-patternfly-26f65e21bdbd">Read more about how we power</a> multi-level navigation in Red Hat Advanced Cluster Management, enterprise tables for Red Hat Satellite, and terminal integrations for Red Hat OpenShift Platform. PatternFly provides the architectural building blocks, freeing teams to focus resources on solving unique product challenges rather than rebuilding mundane basics or customizing off-the-shelf design systems.</p><h4><strong>2. Guarding investment and mitigating risk</strong></h4><p>Perhaps the most business-critical aspect of the infrastructure model is risk mitigation. PatternFly embeds accessibility standards directly at the component level (specifically WCAG AA compliance). When a product team uses a PatternFly component, they are virtually guaranteed accessibility for that specific element, reducing the risk of releasing non-compliant software updates.</p><p>However, accessible components don’t guarantee an accessible experience. To ensure that components are assembled into final screens that are well-structured for assistive technologies, we provide guidance instructing engineering teams on how to assemble our components into holistic layouts.</p><p>Beyond accessibility, we mitigate technical risk by keeping our code packages lean to ensure fast load times. We also monitor the security standards of our third-party dependencies to quickly mitigate concerns at a system level, delivering fixes to everyone at once.</p><h4><strong>3. Managing change and evolution</strong></h4><p>A modern design system must do more than maintain consistency — it must actively facilitate change management. PatternFly functions as the “control tower” that offers the structure, architectural stability, and centralized control to manage rapid evolution.</p><p>This role is essential for the rise of Artificial Intelligence (AI) and Large Language Models (LLMs). Because AI models rely on clear, structured inputs to generate useful code, PatternFly exposes the tokens, component APIs, schemas, and documentation these models need. This ensures that AI interacts with our infrastructure to generate outputs that maintain organizational standards and brand cohesion.</p><p>Whether integrating AI or rolling out a rebrand, this centralized infrastructure allows us to manage how new features are applied — including the predictable handling of breaking changes — ensuring that enhancements benefit rather than disrupt our internal customers.</p><h3>Design systems as internal products</h3><p>While operating as infrastructure provides stability and risk mitigation, managing a design system as an internal product shifts the focus to adoption, satisfaction, and growth. The system’s “customers” — the internal product teams — become essential to ensuring that tangible, immediate value is delivered to those who use our system the most.</p><p>PatternFly operates as a product in three key ways:</p><h4><strong>1. Providing “customer service”</strong></h4><p>We view Red Hat’s product teams as our customers. Successful adoption of PatternFly updates is driven by cross-departmental collaboration and a dedicated enablement team that focuses on assisting products with their integrations.</p><p>This support ranges from helping with migrations to partnering on building new user experiences. We also address user needs in real-time through office hours, critique sessions, and ad hoc support via Slack. Our enablement team is even actively developing AI tooling to support <a href="https://www.patternfly.org/patternfly-ai/ai-assisted-code-migration">code migrations</a> and <a href="https://www.patternfly.org/patternfly-ai/rapid-prototyping">rapid prototyping</a>, ensuring our “customer service” evolves alongside the technology our users are adopting.</p><h4><strong>2. Delivering tangible value (ROI)</strong></h4><p>Our core purpose is to deliver immediate solutions for common concerns so product teams can focus on unique features. We see this value in the high adoption of foundational elements — like buttons, selects, and text inputs — that teams would otherwise build from scratch.</p><p>But we go beyond the basics. We actively partner with products to mature new capabilities, such as our recent exploration of AI. By introducing styling for AI-generated content, conversational interfaces, and generative UIs, the system functions as an internal product that systematically proof-of-concepts and delivers new requirements.</p><p>PatternFly also supports complex, system-level experiences like <a href="https://www.patternfly.org/patternfly-ai/chatbot/overview">our ChatBot extension</a>, which currently powers several Red Hat products offering agentic chat. A notable success is its use in the Red Hat Intelligent Front Door experience:</p><blockquote>“<em>Absolutely brilliant work by all involved. We went from 0 to prototype in 2.5 weeks.</em></blockquote><blockquote><em>PatternFly and its Figma UI kit allowed 6 designers (and 2 managers) to literally work around the clock by handing off tasks twice a day across time zones spanning 12.5 hours.</em></blockquote><blockquote><em>The seamlessness and thoughtfulness that the PatternFly team put into PF6 and the AI components meant that we were able to focus on critical workflows and AI behaviors</em>.”</blockquote><blockquote>— Jason Brock, UXD Manager</blockquote><p>By enabling reusability for both simple and complex features, we drastically reduce custom coding time. The value of this strategy is best illustrated by asking, <strong>“What would happen if the system went away?”</strong> The predictable outcome — massive rework and lost capabilities — proves the system is delivering indispensable business value.</p><blockquote><em>“If the system went away each team would need to spend countless hours doing similar work that would be done slightly differently with each group. I call this chaos.”</em></blockquote><blockquote><em>— Ali Mobrem, Senior Principal Product Manager for OpenShift</em></blockquote><h4><strong>3. Aligning cross-organizational teams</strong></h4><p>PatternFly is managed as a product, led by a dedicated Product Manager who brings Design, Engineering, and Product disciplines together. By working in small, cross-functional teams to collaboratively define initiatives from the start, we guarantee alignment on strategy and vision.</p><p>Organizationally, we sit within Red Hat’s UX design and research team. This positioning allows us to champion consistency across products, integrating tightly with brand and experience teams to connect PatternFly with the Red Hat customer experience across the entire “see, buy, and use” journey.</p><p>Crucially, this structure creates a feedback loop where our roadmap is shaped by actual stakeholder requirements rather than theoretical ideals. As Tracy Rankin, a Vice President of Software Engineering at Red Hat, notes:</p><blockquote>“Red Hat’s products would reflect the company’s internal organizational structures if not for the centralization of the design team and the existence of the PatternFly design system.”</blockquote><blockquote>— Tracy Rankin, VP of Software Engineering</blockquote><h3>The dual mandate amplifies value across disciplines</h3><p>To mature properly and function effectively, it is not enough to be either a stable infrastructure or a helpful product. It is essential to balance both.</p><p>As a dual-function entity, we deliver distinct value to every key discipline in the organization:</p><ul><li><strong>For Designers:</strong> We facilitate efficient creation, consistency, and scalability through robust resources like our Figma library and reusable components with native accessibility. We further accelerate the design-to-development handoff with specialized methods like AI-assisted rapid prototyping.</li><li><strong>For Product Engineers: </strong>We establish a shared technical foundation with React, providing a common language that streamlines onboarding. PatternFly also supports higher-level system concepts — such as scaling information architecture, page layouts, form flows, and complex UI patterns — which often reside in libraries above the core system. This layered support provides the flexibility teams need to innovate beyond basic functionality.</li><li><strong>For the Business Unit:</strong> We create a common language across Design, Engineering, and Product Management. This alignment results in faster delivery, reduced rework, and clearer scoping for predictable roadmaps. Our system also accelerates the Software Development Life Cycle (SDLC) by playing a key role in agentic explorations and enabling the rapid delivery of new features.</li></ul><h3>Securing investment with a dual-role design system</h3><p>A design system is fundamental infrastructure that sustains an organization, but its long-term success relies on treating it as a product that supports and propels its internal users.</p><p>By proving a design system’s value through the impact on quality, risk, and strategic enablement — rather than just component counts — organizations can secure the investment necessary to sustain this dual role. When stakeholders understand that the design system is both the foundation of the house and the service that keeps it running, it stops being viewed as a mere toolkit and starts being recognized as a strategic asset.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own? </em><a href="https://medium.com/p/af90715e556d"><em>Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=53f2b744df1d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/a-dual-mandate-for-design-system-maturity-53f2b744df1d">A dual mandate for design system maturity</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Raising the bar for accessibility]]></title>
            <link>https://medium.com/patternfly/raising-the-bar-for-accessibility-d6643c5d979b?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/d6643c5d979b</guid>
            <category><![CDATA[accessibility]]></category>
            <category><![CDATA[a11y]]></category>
            <category><![CDATA[user-experience]]></category>
            <category><![CDATA[patternfly]]></category>
            <dc:creator><![CDATA[Eric Olkowski]]></dc:creator>
            <pubDate>Thu, 18 Dec 2025 14:19:32 GMT</pubDate>
            <atom:updated>2025-12-18T14:19:31.139Z</atom:updated>
            <content:encoded><![CDATA[<h4>Our latest accessibility enhancements help you build more inclusive experiences</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jRHYyIOlXWCfKkLh320I2w.png" /></figure><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>We’re excited to share details about the completion of our Q3 accessibility epic! Based on a comprehensive audit from earlier this year, we’ve resolved several accessibility issues to improve the user experience for everyone. This effort was two-fold: we’ve made key updates directly to our components (which you get automatically when you upgrade), and we’ve also enhanced our documentation and examples to help you build more accessible products.</p><h4>How we approach accessibility</h4><p>Before diving into what’s new, it’s helpful to understand the process that guides our work. To ensure PatternFly remains robust and accessible, we rely on a multi-layered approach.</p><p>First, every pull request to our codebase is checked by a custom-built, automated tool that scans for accessibility errors against axe-core. This provides a strong baseline and prevents new issues from being introduced.</p><p>But automation can only go so far. We also perform in-depth manual audits, testing our components with assistive technologies like the VoiceOver screen reader on Mac, as well as (time permitting) NVDA and JAWS on Windows. This time-consuming but critical step allows us to test interactive states — like an opened dropdown menu or keyboard navigation — that automated tools can’t cover.</p><p>Finally, we translate our findings into clear accessibility documentation. This guidance is meant to provide you with best practices and clear guidelines that explain why certain attributes are so important for an inclusive experience and how you can implement accessible components.</p><p>Here’s a look at the component-based improvements that you’ll benefit from simply by updating to the latest PatternFly version.</p><h4>Built-in component accessibility enhancements</h4><p>This quarter’s epic led to several out-of-the-box accessibility improvements, which you’ll get “for free” just by updating to the latest version of PatternFly.</p><ul><li><strong>Clearer focus states for buttons:</strong> We’ve modified the styling of the button component’s focus indicator to be easier to perceive, ensuring users navigating with a keyboard can more easily see which element is selected.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/704/1*Hk5hnvRRGWR_gjBmsLFlmg.png" /></figure><ul><li><strong>More reliable tooltips:</strong> We’ve resolved an issue in our React code, where tooltips weren’t correctly linked to their triggers when using refs. Now, tooltips will be correctly associated with their triggers, an important fix that also benefits components that use tooltips, like menu, select, and dropdown.</li><li><strong>Smoother keyboard navigation in data list:</strong> We’ve fixed a keyboard navigation issue where triggering a kebab toggle within a data list item no longer accidentally selects the entire item, creating a more predictable experience.</li></ul><h4>Updated guidance for more inclusive design</h4><p>Beyond the components themselves, we’ve updated our documentation and examples to empower you to build more accessible products from the start.</p><ul><li><strong>Accessible attributes for jump links:</strong> Our examples now include the expected ARIA attributes and unique naming for semantic elements, aligning with the latest accessibility standards.</li><li><strong>Meaningful context for skeleton loaders:</strong> We now recommend including visually hidden text for a single skeleton per context. This provides crucial information for screen reader users while content is loading.</li><li><strong>Added context for icon-based labels in data list:</strong> We’ve added visually hidden text to labels that only contain an icon and a number, giving more meaning to what the labels are intended to convey.</li><li><strong>Unique naming for interactive elements in text input group and hint:</strong> Our examples now ensure that interactive elements have unique names, helping users differentiate between similar controls on a single page.</li></ul><h3>To accessibility, and beyond</h3><p>Accessibility is a never-ending journey, not a destination. There’s no finish line or “mission complete.” As guidelines and best practices evolve, so will PatternFly. Here’s a look at what we’re working on next to continue raising the bar:</p><ul><li><strong>High contrast mode:</strong> We’re building a new high contrast mode theme that aims to meet WCAG 2.2 AAA compliance.</li><li><strong>System-wide WCAG 2.2 AA compliance:</strong> We are officially striving to comply with WCAG 2.2 AA requirements across the entirety of PatternFly, aligning with both IBM and Red Hat Design System standards. We plan to begin the first step towards this goal soon.</li><li><strong>AI exploration:</strong> We’re exploring how AI can help us generate and structure accessibility documentation, making our process more efficient for components still in need (don’t worry, a human will <em>always</em> proofread the final content).</li><li><strong>Audit process refinement:</strong> We are refining our manual audit process to be less time consuming, which would allow us to test our components more regularly and efficiently, ultimately catching issues sooner.</li></ul><p>These future updates reflect our ongoing commitment to accessibility. We’re excited to continue this journey and empower you to create more inclusive products for everyone.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own?</em><a href="https://medium.com/p/af90715e556d"><em> Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d6643c5d979b" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/raising-the-bar-for-accessibility-d6643c5d979b">Raising the bar for accessibility</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Building a better bot, together]]></title>
            <link>https://medium.com/patternfly/building-a-better-bot-together-e226f797b457?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/e226f797b457</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[open-source-ai]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[patternfly]]></category>
            <dc:creator><![CDATA[Rebecca Alpert]]></dc:creator>
            <pubDate>Thu, 30 Oct 2025 15:38:14 GMT</pubDate>
            <atom:updated>2025-10-30T15:38:12.880Z</atom:updated>
            <content:encoded><![CDATA[<h4>Our latest ChatBot enhancements are community driven</h4><figure><img alt="A white rectangle sits atop a dark blue background with a white grid, like a blueprint. In the white rectangle is a low-fidelity mockup of a chatbot message. At the forefront of the image are two labeled cursors: one that says “Developer” and the other “Designer”." src="https://cdn-images-1.medium.com/max/1024/1*MGvW5uB12u2gkAEXlk1BKw.png" /></figure><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>Since its launch in early 2024, the PatternFly ChatBot extension has grown from an idea into a key tool used in more than ten projects to create consistent AI experiences. ChatBot is community driven, and the team’s goal is to keep up with community needs, saving you time and providing you with a consistent, positive experience.</p><p>Our journey of community-led improvement continues with our latest release.</p><p>Driven by your feedback, this update delivers powerful enhancements that address key usability issues and introduce new, in-demand features.</p><h3>Delivering features your users need</h3><p>Our work for this release was driven by two simple questions:</p><ol><li>How do users feel about the PatternFly ChatBot extension?</li><li>How can we keep up with evolving areas in AI like <a href="https://modelcontextprotocol.io/docs/getting-started/intro">model context protocol</a>, <a href="https://www.redhat.com/en/topics/ai/what-is-agentic-ai">agentic AI</a>, and <a href="https://www.redhat.com/en/topics/ai/what-is-retrieval-augmented-generation">retrieval augmented generation</a>?</li></ol><p>To answer the first question, PatternFly designers Kayla Chumley and Lucia Boehling led a series of usability workshops. They observed users performing several tasks with the ChatBot, and the results were clear. While the extension was well-liked, participants experienced a few key pain points:</p><ul><li>Finding and managing chat history was difficult.</li><li>Starting a new chat was not intuitive.</li><li>The interface felt too dense, and users wanted more layout control.</li><li>Modern chat features were missing, such as message editing and transcripts.</li></ul><figure><img alt="A screenshot from a presentation, with an image of a chatbot and text that outlines pain points and recommendations related to the image. Specifically, the text addresses a need for less white space and more content density." src="https://cdn-images-1.medium.com/max/1024/1*9SXgnKRHxAC0US2NXg7HHA.png" /><figcaption>Recent user research highlighted clear usability challenges for us to address.</figcaption></figure><p>Based on this feedback, we quickly focused on designing, workshopping, and building out new features and updates that addressed these needs. The latest ChatBot release now offers:</p><ul><li><strong>Clearer navigation</strong>, with a new title, icon, and “new chat” button in the chat history drawer.</li><li><strong>Flexible layouts, </strong>with compact components and <a href="https://www.patternfly.org/patternfly-ai/chatbot/overview/demo/display-mode-switcher/">a new demo that showcases switching between layouts</a>.</li><li><strong>Modern chat features,</strong> including<strong> </strong>message separator options and new demos that showcase message and chat history items, “pinning” chat history items, and transcript downloads.</li></ul><figure><img alt="A collage of two images. The first is a chat history window, with a pinned conversation section and an open menu linked to the pinned item. The menu has options for unpinning, renaming, downloading, or deleting the conversation. The second image is a complete chatbot screen, with a welcome message, selectable prompts, a message from a user, and an overlaid display mode switcher triggered in the header." src="https://cdn-images-1.medium.com/max/1024/1*FI36yGojDIqwaiUypyaXVA.png" /><figcaption>Some of our latest features come directly from recent research and user feedback.</figcaption></figure><p>To stay ahead of the curve in AI, we also collaborated with our community to deliver features for more advanced interactions:</p><ul><li><strong>Deep thinking and tool calls:</strong> New components that allow control over tool calls and display insight into your AI’s reasoning process.</li><li><strong>Complex interactions:</strong> Demos for adding complex interactions to messages, such as software downloads and live installation progress monitoring</li><li><strong>Rich media support:</strong> New modals for previewing attached images and a better handling for non-previewable files.</li><li><strong>Footnotes and enhanced source cards:</strong> New ways to provide more context on source material, including system confidence scores.</li></ul><figure><img alt="A collage of 5 different chatbot features, including complex bot actions like calling tools, showing progress for installation in a card, showing a source card with a confidence rating that suggests relevancy, a modal with a large image preview, and an expandable card that shows the model’s thinking process." src="https://cdn-images-1.medium.com/max/1024/1*dt-lDqotebzSqg09PzCYCw.png" /><figcaption>Other new features address specific needs from our community.</figcaption></figure><h3>Your feedback is essential</h3><p>We love seeing how you’re using the ChatBot extension in your projects. These new features came directly out of conversations with community members like you. The ChatBot design and development teams are small, and your feedback is essential for us.</p><p>A special thanks to everyone who gave us early feedback on the designs and API for the new deep thinking and tool calls components. We have tried to keep these as flexible as possible given the fast pace of change. We have also heard your request for Markdown support in these new components and have <a href="https://github.com/patternfly/chatbot/issues/668">created an issue to track progress on that work in GitHub.</a></p><h3>What’s next?</h3><p>This is just the beginning. We’re excited to bring this more intuitive and up-to-date chatbot experience to the PatternFly community. Our next steps include a second round of user testing to validate our changes and ensure we’ve truly improved the user experience. As the AI field continues to evolve, we’ll continue to work with you to identify and build the features you need most.</p><p>We encourage you to try out our new features and <a href="https://www.patternfly.org/patternfly-ai/chatbot/overview">explore the PatternFly ChatBot extension on our website.</a></p><p>What would you like to see in a future version? Share your thoughts with us by <a href="https://github.com/patternfly/chatbot/issues">opening an issue on GitHub.</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own?</em><a href="https://medium.com/p/af90715e556d"><em> Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e226f797b457" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/building-a-better-bot-together-e226f797b457">Building a better bot, together</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Human-Human-AI interaction]]></title>
            <link>https://medium.com/patternfly/human-human-ai-interaction-0c51b87e4885?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/0c51b87e4885</guid>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[collaboration]]></category>
            <dc:creator><![CDATA[Nadav Viduchinsky]]></dc:creator>
            <pubDate>Mon, 27 Oct 2025 14:46:42 GMT</pubDate>
            <atom:updated>2025-10-27T14:48:01.164Z</atom:updated>
            <content:encoded><![CDATA[<h4><strong>Unleashing collaborative potential with AI</strong></h4><figure><img alt="Black silhouettes of 3 people sit in front of 3 white squares, each with a black icon placed in the center. The first icon is a computer with a code tag symbol to represent developers. The second is an outline of a fountain pen tip to represent designers. The third is an outline of a beaker with bubbles to represent researchers. There are 3 blue sparkles framing the 3 squares to represent AI." src="https://cdn-images-1.medium.com/max/1024/1*yQnTtctV19NUs1cdOlQ2lw.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>As a UX researcher, I’ve seen AI transform everyday tasks: drafting research plans, analyzing data, and even summarizing interviews. New tools emerge daily, reshaping how we work. But here’s the thing: most of us use AI individually, as a solo tool for personal efficiency, instead of unlocking its collaborative potential.</p><p>That’s a missed opportunity. What if, instead of just working faster alone, we utilized AI to work <em>more effectively together</em>?</p><h3>The Problem I See When Using AI</h3><p>When teams use AI in silos, we risk trusting it blindly, overlooking biases in both our questions and the models themselves.</p><p>Here’s a real example: We introduced NotebookLM so that product and design teams could access research data instantly. Powerful idea, right? But I noticed colleagues asking biased questions that led to equally biased answers.</p><p>For instance, someone might ask:</p><p><em>“Is there a need for this feature?”</em></p><p>The AI will dutifully return quotes that support the idea, but that’s not the same as proving the strength of the use case. The way the question is framed shapes the answer, and without others there to challenge the framing, blind spots go unnoticed.</p><p>A better question might be:</p><p><em>“Users mentioned [specific problem]. We’re considering [specific solution] to address it. Based on the data, what are the pros and cons users might experience? And what should we keep in mind when designing it?”</em></p><p>This invites the data to speak for itself, rather than serving as confirmation for a pre-decided narrative. The problem of blind spots isn’t limited to research. When a designer uses a UI generator in a silo, they might get a beautiful dashboard that overlooks key technical limitations that a developer would notice. A developer might use a code assistant to generate a wizard that functions well but misses crucial considerations for the user’s main goals that were identified in previous user research. In isolation, these AI-generated assets seem “good enough”, but they lack the collective expertise a team provides.</p><h3>Learning from Paper Prototyping</h3><p>This reminds me of why paper prototyping works so well in design. We don’t sketch on paper for aesthetics; we do it to strip away distractions and focus on the flow and core experience.</p><p>However, the real strength of paper prototyping lies in its collaborative nature. You sit with a PM, sketch an idea, and refine it together in minutes. While the designer sketches the UI, the product manager can check it against business goals, and an engineer can provide real-time feedback on feasibility. There’s no waiting weeks for feedback. Instead of each person holding separate mental models, you create a shared one on the spot.</p><p>Collaborative AI can work the same way: fast, iterative, and fundamentally shared.</p><h3>My Solution: Collaborative AI Sessions</h3><p>Instead of team members querying data alone, I run live sessions where we explore answers together.</p><p>Here’s how it works:</p><ol><li><strong>Frame the question together</strong> — I guide the team to avoid bias in how we ask.</li><li><strong>Use AI live</strong> — We run the query in real time.</li><li><strong>Interpret as a group</strong> — We discuss what the AI surfaced and what’s missing.</li><li><strong>Add research context</strong> — Since I conducted the study (and related ones), I help connect insights to the bigger picture.</li><li><strong>Decide next steps</strong> — Actions are based on both AI output and human expertise.</li></ol><p>The result? Multiple perspectives catch bias before it misleads us. And because everyone contributes to framing and interpretation, we leave with a shared understanding, not just a shared document.</p><h3>The Critical Thinking Advantage</h3><p>There’s another benefit that often gets overlooked: collaborative AI strengthens our critical thinking.</p><p>When I work with AI alone, I sometimes take its answers at face value. <a href="https://dl.acm.org/doi/abs/10.1145/3568162.3576977">Recent research shows</a> this is common: we trust tech more when it behaves as expected, which means we can miss its mistakes. For example, in a study that tested the interaction with a biased robot, they found that biased robot behavior can increase human gender stereotypes, but counter-biased (pro-woman) robot behavior can significantly reduce or even eliminate stereotypical thinking in participants [2]. This study suggests that we often trust technology, sometimes even more than our own instincts.</p><p>From my experience, this tendency changes in a group setting. We’re more likely to challenge the output, spot gaps, and refine it. The responsibility to think critically becomes collective, not individual. And because the critique is aimed at the AI, not a person, it creates a safer space for questioning. The focus isn’t on who had the “right” or “wrong” idea, but on collectively improving the AI’s prompt and interpreting its output.</p><p>These collaborative AI sessions also reduce self-doubt; feedback loops are directed at the tool, not individuals, turning critique into constructive collaboration.</p><h3>Why This Approach Strengthens Teams</h3><p>When AI becomes a collaborative tool rather than a personal assistant, it helps interdisciplinary teams thrive by encouraging essential behaviors that <a href="https://human-resources-health.biomedcentral.com/articles/10.1186/1478-4491-11-19">research has found to be key</a> [3]:</p><ul><li><strong>Better Communication</strong> — Ideas are visualized instantly when using AI, reducing misunderstandings.</li><li><strong>Everyone’s Expertise Shines</strong> — AI produces quickly, but the team’s diverse expertise decides what matters.</li><li><strong>Safer Feedback</strong> — As mentioned, critique focuses on the AI output, not individuals, encouraging openness.</li><li><strong>Shared Understanding</strong> — Real-time iteration aligns teams more effectively than weeks of back-and-forth.</li></ul><h3>Beyond Research: A Broader Vision</h3><p>This collaborative method extends beyond internal teams. Every individual contributes a unique understanding of the feature’s potential users and applications. Diverse perspectives offer a comprehensive view, and by integrating AI into the collaborative process, we can enrich discussions further. AI can introduce additional information and facilitate collective critique from various viewpoints, broadening the overall conversation. This approach empowers the team to think independently and utilize AI as a valuable tool, rather than relying on it as a decision-maker.</p><p>Imagine product kickoffs where PMs, designers, and engineers prototype together with AI. Instead of a slow loop of “design alone → present → refine,” you could iterate live in the same meeting.</p><p>Here’s an example scenario: a PM, designer, developer, and researcher work together using an AI tool trained on the latest PatternFly docs, or other design systems. The PM asks the AI<em> “create a table view that….”</em> The AI generates a quick prototype, which the designer immediately has feedback on. The designer then asks the AI <em>“That looks good, but our users might not understand how they can manipulate the data. Let’s add more interaction to the table by…”.</em> In that way, each member can advocate for the users’ challenges, while taking into consideration current technological limitations, or roadmap considerations.</p><p>You can even extend this to working with users. For usability testing, imagine evolving a prototype in real time with a customer. They give feedback, you tweak the design instantly, and they see their input reflected immediately. This transforms the “magic wand” concept into reality, not only gathering insights but truly empowering users to co-create.</p><p>With AI usage guidance continuing to evolve, there will be new ways to bolster this process. For example, using something like PatternFly’s recently published <a href="https://www.patternfly.org/patternfly-ai/rapid-prototyping">rapid prototyping guide</a> [4] could help facilitate collaborative sessions like these, while adding loose guardrails to help ensure that prototypes align with best practices and existing patterns.</p><h3>The Shift We Need to Make</h3><p>Moving from solo AI use to human-human-AI collaboration isn’t just a workflow tweak; it’s a mindset shift. It speeds up alignment, opens new creative possibilities, and strengthens the <a href="https://www.igi-global.com/gateway/article/350185">human skills we risk losing</a> if we rely on AI uncritically [1].</p><p>The opportunity is clear: AI is most powerful not when it makes <em>me</em> faster, but when it makes <em>us</em> better.</p><h4>Sources</h4><p>[1] Çela, E., Fonkam, M. M., &amp; Potluri, R. M. (2024). Risks of AI-assisted learning on student critical thinking: a case study of Albania. <em>International Journal of Risk and Contingency Management (IJRCM), 12</em>(1), 1–19.</p><p>[2] Hitron, T., Morag Yaar, N., &amp; Erel, H. (2023, March). Implications of ai bias in hri: Risks (and opportunities) when interacting with a biased robot. In <em>Proceedings of the 2023 ACM/IEEE International Conference on Human-Robot Interaction</em> (pp. 83–92).‏</p><p>[3] Nancarrow, S. A., Booth, A., Ariss, S., Smith, T., Enderby, P., &amp; Roots, A. (2013). Ten principles of good interdisciplinary team work. <em>Human resources for Health, 11</em>, 1–11.</p><p>[4] PatternFly. (n.d.). <em>Rapid prototyping</em>. PatternFly. Retrieved October 15, 2025, from <a href="https://www.patternfly.org/patternfly-ai/rapid-prototyping/">https://www.patternfly.org/patternfly-ai/rapid-prototyping/</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>If you have questions about the process, or run into any issues, please </em><a href="https://join.slack.com/t/patternfly/shared_invite/zt-1npmqswgk-bF2R1E2rglV8jz5DNTezMQ"><em>reach out to us on Slack</em></a><em>. We can’t wait to read what you have to share!</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=0c51b87e4885" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/human-human-ai-interaction-0c51b87e4885">Human-Human-AI interaction</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Open source is a two-way street]]></title>
            <link>https://medium.com/patternfly/open-source-is-a-two-way-street-71c31f6c8384?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/71c31f6c8384</guid>
            <category><![CDATA[community]]></category>
            <category><![CDATA[collaboration]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[community-engagement]]></category>
            <dc:creator><![CDATA[Eric Olkowski]]></dc:creator>
            <pubDate>Fri, 26 Sep 2025 13:17:28 GMT</pubDate>
            <atom:updated>2025-09-26T14:47:48.909Z</atom:updated>
            <content:encoded><![CDATA[<h4>The impact of outside contribution on PatternFly</h4><h4>Co-author: <a href="https://medium.com/@divyanshugupta585">Divyanshu Gupta</a></h4><figure><img alt="A light blue background with two, small white circles upon it. The white circle each have an icon within: one with a PatternFly logo and one with a group of people. There is a dark blue line connecting the circles, with arrows on both ends." src="https://cdn-images-1.medium.com/max/1024/1*iyxUnqaepI63DxmM7U56cg.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>When the topic of open source comes up, there can be an instinct to focus more on the benefits for the project itself: the faster development, the bug fixes, and the innovation that comes from a global and diverse community. But what about the people behind the contributions? For many, contributing to an open source project is a journey of growth, learning, and finding their place in a larger ecosystem.</p><p>To truly understand how this dynamic plays out in PatternFly’s open source practices, we need to hear both sides of the story: the perspective of the project maintainer (PatternFly engineer Eric Olkowski) and the experience of the outside contributor (Divyanshu Gupta).</p><h4>The Maintainer’s Perspective: A Welcome Helping Hand</h4><p>I’m Eric, a software engineer and one of PatternFly’s core maintainers for the past 4 years as well as a maintainer of the open source self-learning curriculum, <a href="https://www.theodinproject.com/">The Odin Project.</a></p><p>As an engineer on the PatternFly team, an active open source community can be a huge benefit. There’s always a backlog of issues we want to tackle but can’t prioritize due to more pressing tasks (something I’m sure many projects, open source or not, can relate to). This is where outside contributors like Divyanshu come in, and his impact on our project has been invaluable.</p><p>For any open source project, a dedicated contributor can be an incredible asset, particularly with smaller, more straightforward issues that are perfect for those with less experience. Divyanshu has helped us clear tickets that had been sitting in our backlog, enabling us to focus on larger, more complex features, while still allowing us to close out tickets that are still important for the project in different and various ways. <strong>His contributions are more than just code, though; they represent a lifeline for a team that’s juggling many different priorities.</strong></p><p>But the benefits aren’t just for PatternFly. Divyanshu’s journey has been inspiring to watch. He has gained practical experience with new concepts, like using Handlebars for the first time, and has quickly adapted to our codebase conventions. He’s not afraid to ask questions, whether in Slack or on a pull request, and he’s taken the initiative to grab issues of varying difficulty. This willingness to engage directly with our team is great preparation for what it’s like to work on a professional team in the future. He even spoke at one of our Office Hours meetings, which is a fantastic step for anyone looking to build confidence in a public forum.</p><p>Beyond that, the potential mutual benefit lies in the fact that an engineer on an open source project like myself gets more opportunity to help support and mentor outside contributors, especially those who may be taking their first steps into the land of open source. Likewise, outside contributors like Divyanshu are able to receive feedback and insight from experienced engineers. While providing a more hands-on supporting/mentor-like role may not always be feasible (the more outside contributors or larger workload for a release, the less time we may have to be more hands-on), this potential is still a huge benefit for both sides.</p><p>Working with Divyanshu has been a pleasure, not just because of the work he’s done for our various repositories, but also because of his positive attitude. He’s incredibly easy to talk to, quick to learn, and consistently turns around quality work. Witnessing his growth has been one of the most rewarding parts of this experience, and I know he’ll continue being a lean, mean, accessibility, handlebars, React-y machine.</p><h4>The Contributor’s Journey: From Student to Part of the Team</h4><p>I’m Divyanshu, a final-year undergraduate student pursuing a B.Tech in Computer Science and Engineering, with a passion for making projects better through meaningful improvements.</p><p>My journey with open source began in 2023, during my second year of college. My first contribution was to a project called WasmEdge, where I wrote an installation script in Bash. It was a long process that took me about a month, but it taught me a lot about testing code and, more importantly, about communicating with maintainers.</p><p>After that, I made a few small documentation updates, but I struggled to find an issue where I could make a more meaningful contribution. I spent a year exploring different projects and learning about full-stack development, with a focus on ReactJS, TypeScript, and other related technologies.</p><p>In early 2025, I came across the Cockpit project and discovered that they used the PatternFly library for their UI/UX. This led me to PatternFly, a design library used by many Red Hat products that is actively maintained and open source.</p><p>My first pull request in the PatternFly ecosystem was for an accessibility issue, and it was a fantastic learning experience. It was the first time I had worked on a large-scale project, and it opened my eyes to the importance of web accessibility. From there, I tackled a variety of issues, from updating outdated dependencies to converting JavaScript examples to TypeScript, both of which helped me understand the codebase more clearly. I also worked on bug fixes and even a new feature request for PatternFly’s micro-animations epic.</p><p>More recently, I’ve contributed to the chatbot and core PatternFly repositories, getting to work with Handlebars and more accessibility fixes. The entire experience over the past six months has been an amazing learning opportunity. The engineers on the PatternFly team have been incredibly helpful whenever I’ve gotten stuck. I want to give a special thank you to Eric, who was a constant source of support.</p><p>I encourage anyone interested in open source to contribute to PatternFly or any other project you like. It’s an experience that will add immense value to your skills and your journey as a developer.</p><h4>The key to open source success</h4><p>Successful open source experiences must value and seek to understand the experience of both sides of the street. Outside contributions are inherently meaningful for open source projects; they allow new perspectives and skillsets to reinforce the evolution of the project. They can offer that critical helping hand when roadmaps grow too long. But, the experience of the contributor ultimately decides if the project will actually see community support. If the contributor’s experience is painful and fruitless, open source projects can easily lose interest before it gets a chance to take off.</p><p>The experiences in this story highlight an invaluable lesson for the PatternFly team: contributing to our codespace is a two way street. By collaborating with maintainers, contributors have the potential to make a greater impact, learn crucial lessons, and function as an extension of the core team.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own? </em><a href="https://medium.com/p/af90715e556d"><em>Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><p><strong><em>Disclaimer: </em></strong><em>This story was drafted with AI assistance. All insights and final edits are the author’s own.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=71c31f6c8384" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/open-source-is-a-two-way-street-71c31f6c8384">Open source is a two-way street</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[PatternFly Medium submission guidelines]]></title>
            <link>https://medium.com/patternfly/patternfly-medium-submission-guidelines-af90715e556d?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/af90715e556d</guid>
            <dc:creator><![CDATA[Erin Donehoo]]></dc:creator>
            <pubDate>Wed, 27 Aug 2025 16:08:42 GMT</pubDate>
            <atom:updated>2025-08-27T16:19:21.354Z</atom:updated>
            <content:encoded><![CDATA[<h4>Rules, tips, and tricks to writing with us</h4><figure><img alt="Two slightly rounded rectangles atop a split-color background, with a black background on one side and light gray on the other. One rectangle is white, with a blue PatternFly logo in the middle. The other rectangle is dark blue, with a black Medium logo in the middle. From both rectangles there are radiating lines to draw attention." src="https://cdn-images-1.medium.com/max/1024/1*ZMlmAiRnX0g85rhfOYZ1vw.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>PatternFly is an <strong>open source design system</strong>, dedicated to building consistent, usable enterprise software. We operate on principles of transparency and community contribution, making PatternFly accessible to everyone. Our primary goal is to empower designers and developers, enabling them to work more efficiently and build better user experiences together.</p><p>We demonstrate these core principles here on our Medium publication, where we publish medium-to-long format articles with project details and the stories behind new features. We also empower members of our community to share their experiences in the field of UX.</p><p>Our community thrives of diverse voices — we welcome and encourage anyone interested to write with us! Here are some guidelines to help you create PatternFly’s next great article.</p><h3>Requirements</h3><ol><li>In order to submit an article, you must <a href="https://help.medium.com/hc/en-us/articles/115004915268-Sign-in-or-sign-up-to-Medium">have a Medium account</a> and be following our publication.</li><li>By submitting your article, you agree to collaborate with PatternFly editors to ensure that your story aligns with our publication style.</li><li>Ensure your story is appropriate for our publication:</li></ol><ul><li><strong>Audience</strong>: UX industry professionals, PatternFly users, Red Hatters, and anyone interested in UX or open source design.</li><li><strong>Content focus</strong>: To share expertise, educate readers, and start conversations with the community about UX, open source design, and PatternFly</li></ul><h3>Writing your article</h3><p>Generally, a story should focus on one of the following topics:</p><ul><li><strong>PatternFly: </strong>A story about your thoughts, ideas, research, or tips for using PatternFly. This includes details about how you’re using PatternFly, as well as PatternFly-related updates.</li><li><strong>Open source:</strong> Your perspective on the world of open source design and development.</li><li><strong>UX thought leadership:</strong> Insights on design, research, development, writing, or other UX fields.</li></ul><p>To get a better idea of how an article should flow, we recommend first reading some of our recently published pieces.</p><h4><strong>A note on AI-assisted writing</strong></h4><p>Please <strong>do not use AI to generate your entire story. </strong>While it’s a great tool for brainstorming and polishing your draft, we want your unique voice and experience to be front and center.</p><p>Even if you don’t consider yourself a writer, we want to hear <em>your</em> story in <em>your</em> words. Our editors are here to help with the rest!</p><h3>Formatting your article</h3><p>All PatternFly articles share a few consistent design aspects:</p><ul><li><strong>Title and subtitle: </strong>Each article needs an attention-grabbing title and a short, descriptive subtitle.</li><li><strong>Header image: </strong>Articles begin with a header image that also serves as the story’s thumbnail. This image will be created by the PatternFly team to ensure visual consistency. To request an image, please leave a bracketed comment in your draft with a clear description. For example, <em>[Image: A Figma blueprint-style image, with a button at the center that a mouse is hovering over. The button has a ripple design to indicate the animation.]</em></li><li><strong>Structure:</strong> Format your article with an introduction, a body with multiple sections, and a conclusion.</li><li><strong>Introduction: </strong>Preview<strong> </strong>the story you’re going to tell and let the intro lead into the first body section.</li><li><strong>Body: </strong>Add a subtitle that describes the content. Include relevant screenshots and images that help tell your story.</li><li><strong>Conclusion:</strong> Summarize your story and include any next steps or calls to action that you have.</li></ul><h3>Submitting your draft</h3><p>Once you’ve written your article, <a href="https://help.medium.com/hc/en-us/articles/213904978-Submit-a-story-to-a-publication">follow Medium’s guidelines to submit your draft</a> to our publication.</p><p>After you submit your draft, the PatternFly, our editors will do their best to review it within two weeks. You’ll be notified of any requested changes or feedback from our editors.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>If you have questions about the process, or run into any issues, please </em><a href="https://join.slack.com/t/patternfly/shared_invite/zt-1npmqswgk-bF2R1E2rglV8jz5DNTezMQ"><em>reach out to us on Slack</em></a><em>. We can’t wait to read what you have to share!</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=af90715e556d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/patternfly-medium-submission-guidelines-af90715e556d">PatternFly Medium submission guidelines</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Motion with purpose]]></title>
            <link>https://medium.com/patternfly/motion-with-purpose-7ac3bd08efba?source=rss----3e56d5dc1325---4</link>
            <guid isPermaLink="false">https://medium.com/p/7ac3bd08efba</guid>
            <category><![CDATA[design-systems]]></category>
            <category><![CDATA[web-design]]></category>
            <category><![CDATA[patternfly]]></category>
            <category><![CDATA[animation]]></category>
            <category><![CDATA[open-source]]></category>
            <dc:creator><![CDATA[Erin Donehoo]]></dc:creator>
            <pubDate>Thu, 31 Jul 2025 13:44:10 GMT</pubDate>
            <atom:updated>2025-09-08T15:53:39.725Z</atom:updated>
            <content:encoded><![CDATA[<h4>Building a motion system that’s true to our values</h4><figure><img alt="A design “blueprint” places a blue, pill-shaped button on a white background with a light gray grid. There’s a finger pointer over the button, with a ripple of shades of blue coming from the center of the button, to the edge of the button border. There’s a thin, outlined rectangle surrounding the button and pointer that’s reminiscent of a Figma design." src="https://cdn-images-1.medium.com/max/1024/0*f2KRU4Bw2ZmoOSOy" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p>When you think of animation in UIs, what comes to mind?</p><p>It’s easy to dismiss motion as a pretty decoration, something that simply brings excitement to otherwise dull interactions. And while there’s value in livening up our software experiences, what if the most effective animations were the ones you barely noticed? What if motion, like typography and color, was simply another tool to make complex products more clear and usable?</p><p>On the PatternFly team, this is a question we’ve been exploring since 2022.</p><p>As we’ve worked to integrate motion into our design system, we knew it had to be more than just a fun addition. It needed a purpose, and it needed to be true to our principles and values.</p><p>By meticulously researching and observing animation implementation in other design systems, we deliberately chose a path that prioritized the performance and stability that our users expect from PatternFly. After years in the making, we’re excited to dive into our new motion system — one that is intentional, consistent, engaging, and, above all, inclusive.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VIDkdSOnvw2EfG-GtwkQcg.png" /></figure><h4>Designing for everyone with an accessibility-first approach</h4><p>Even when it’s used intentionally and carefully, motion in UIs isn’t for everyone.</p><p>For some users, animation is a distraction. But for others, it’s more than just distracting–it’s harmful. Motion-based effects can trigger <a href="https://alistapart.com/article/accessibility-for-vestibular/">debilitating vestibular disturbances</a>, and certain types of flashing <a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility/Seizure_disorders">can induce seizures</a> in individuals with <a href="https://www.epilepsy.org.uk/info/photosensitive-epilepsy/web-design">photosensitive epilepsy</a>. Our intention for adding motion to PatternFly was always to help our users, not hurt them, so we took the responsibility of accessible design incredibly seriously.</p><p>Initial research, led by Sarah Rambacher, uncovered a set of strict, safety-first considerations. We learned that parallax effects and movement that runs contrary to a user’s scroll direction are highly likely to be problematic. We learned that flashing content poses specific risks, especially flashes between 5 and 30Hz and saturated red flashes.</p><p>With these clear considerations, our motion system prioritizes accessibility at its core.</p><ul><li>We follow the <a href="https://www.w3.org/TR/WCAG21/#seizures-and-physical-reactions">W3C accessibility guidelines</a> to enforce a limit of either using less than three flashes per second, or ensuring that the flash is below the <a href="https://www.w3.org/TR/WCAG21/#dfn-general-flash-and-red-flash-thresholds">general flash and red flash thresholds</a>.</li><li>We keep our animations minimal and reduce their contrast to avoid potential triggers.</li><li>Most importantly, we embrace the prefers-reduced-motion media query as a clear path to let users reduce the presence of animations. To ensure consistent functionality for animated components, we often reduce the animation duration to be imperceptible, rather than completely disabled. This approach prioritizes user safety without inadvertently breaking the experience.</li></ul><figure><img alt="A gif shows an error message that populates as improperly formatted text is entered into a text input. The user is shown turning on reduced motion settings in an OS menu and triggering an error once again. Prior to reduced motion, the error appears with a fade-in and slight side-to-side jiggle. In reduced motion, there’s only the face-in." src="https://cdn-images-1.medium.com/max/800/0*gk0ckXs2DZ-83iQd" /><figcaption>To further solidify our research findings and technical decisions, we crafted our motion design principles that provide a clear and easy-to-understand framework for our approach to motion.</figcaption></figure><h4>Motion with a mission</h4><p>At the foundation of our motion design philosophy is our declaration that motion in PatternFly must always serve a purpose. Well-designed animations can be powerful tools for improving usability. They can guide a user’s focus to what’s important, clarify the relationship between UI elements, and provide immediate, reassuring feedback that the system is responding to their actions.</p><p>This led us to our four guiding principles:</p><ul><li><strong>Intentional:</strong> Motion should guide our users without being a distraction. It must be purposeful and simple, helping users complete their tasks and focus only on what is most important.</li><li><strong>Consistent:</strong> Motion should create a familiar and predictable experience. It should be applied uniformly to unify interactions and connect the user’s journey across different products.</li><li><strong>Engaging:</strong> Motion should captivate users and add character to the interface. It can celebrate user accomplishments and make common interactions more expressive and interesting.</li><li><strong>Inclusive:</strong> Motion must empower users by respecting their preferences. It must always be optional and accommodating to ensure a comfortable and accessible experience for all.</li></ul><p>Take our expansion animations, for example. When a user opens an accordion or an expandable section, the content doesn’t just pop into view. Instead, a gentle fade and slide transition draws their eye to the newly revealed information. It’s a subtle effect, but it aligns with our principle of being intentional by guiding the user’s focus and making the new content easier to process.</p><figure><img alt="A gif is shown, where a mouse pointer clicks a navigation menu item to expand sub-nav items. The sub-nav items come into view with an animation that slides and fades the items into view from the direction of the parent item." src="https://cdn-images-1.medium.com/max/800/0*OEf3XGyw6WcUIqxc" /><figcaption>By guiding focus with a gentle fade and slide transition, expansion animations draw your eyes to newly revealed information.</figcaption></figure><h4>Anatomy of a PatternFly animation</h4><p>To ensure our animations will be consistent and scalable we developed a system of semantic motion tokens for duration, delay, and easing.</p><figure><img alt="Semantic design tokens are set up within Figma. They outline a range of options for motion duraction, from “xs” to “2xl” duration lengths." src="https://cdn-images-1.medium.com/max/1024/0*iXyW71xnOdYz7w-1" /><figcaption>Our motion tokens fit right into the semantic token system of PatternFly 6.</figcaption></figure><p>Under the hood, we chose a CSS-first approach. By prioritizing CSS transitions and animations over JavaScript-based solutions, we’re able to benefit from better performance. Because browsers are highly optimized to handle CSS animations, our animations will have smoother rendering and less technical overhead. We also focus on animating only the most performant properties, like transform and opacity, avoiding less efficient properties like height and margin that can negatively impact the animation quality.</p><figure><img alt="A gif shows a mouse pointer hovering over a hamburger menu navigation icon and clicking the icon. On hover, the middle of three horizontally stacked bars turns to a right-facing arrow. When clicked, the associated menu opens, and the arrow faces to the left, indicating that subsequent clicks will close the menu." src="https://cdn-images-1.medium.com/max/800/0*w81OAk2w0X_nyRTc" /><figcaption>A new arrow indicator in our hamburger menu icon signals to users what will happen next.</figcaption></figure><p>Our decision to use a CSS-first approach was informed by a careful analysis of other major design systems, where we saw a variety of philosophies. Some relied more heavily on JavaScript, while others used less performant properties.</p><p>By analyzing the different methods being used, we could solidify our path and focus on prioritizing performance and stability.</p><figure><img alt="A comparison table contains an assessment of animation implementation in 4 design systems, including PatternFly. The table contains checkmarks and x’s for different features. Only PatternFly’s column contains all features outlines: docs, css-only animations, most performant animation usage, accessibilty docs, and documented support for prefers-reduced-motion." src="https://cdn-images-1.medium.com/max/1024/0*MBIMDByS5Z3YpGw7" /></figure><ol><li><strong>Most performant actions used:</strong> Refers to using CSS properties like transform and opacity that don’t force the browser to recalculate page layouts, resulting in smoother animations and better overall performance.</li><li><strong>Orchestration:</strong> Describes how an animation is triggered. MUI uses JavaScript to manage the start and end states and orchestrate CSS transitions.</li><li><strong>Generally performant:</strong> While MUI might favor performant properties, some components animate height and can still lead to less smooth animations.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VIDkdSOnvw2EfG-GtwkQcg.png" /></figure><h3>Now we’re movin’ and groovin’</h3><p>Bringing purposeful motion to PatternFly has been a multi-year, highly collaborative marathon. The foundational system we’ve built demonstrates how animation, when treated with care, can make an interface more intuitive, accessible, and engaging.</p><p>With our initial phase of micro-animations complete, we can look toward the next horizon, like assessing performance and usability, understanding user sentiment, or even exploring more complex animations. We also look forward to ensuring that all animations are supported by default in a future breaking change release, removing the need for any opt-ins.</p><p>See the result of this multi-year effort:</p><ul><li>Dive into the details in our<a href="https://www.patternfly.org/design-foundations/motion"> motion guidelines and developer documentation</a>.</li><li>Interact with the different animations in <a href="https://www.patternfly.org/design-foundations/motion/demo">our guided animations tour</a>.</li><li>And let us know what you think.</li></ul><p>Your experience will help us define what comes next.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4W1_9uAO6Wyvv-0lJYvPFg.png" /></figure><p><em>Have a story of your own? </em><a href="https://medium.com/p/af90715e556d"><em>Write with us</em></a><em>! Our community thrives on diverse voices — let’s hear yours.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7ac3bd08efba" width="1" height="1" alt=""><hr><p><a href="https://medium.com/patternfly/motion-with-purpose-7ac3bd08efba">Motion with purpose</a> was originally published in <a href="https://medium.com/patternfly">PatternFly</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>