July – September 2021 PatternFly Newsletter As our Flyers in the Northern hemisphere turn over a new leaf from summer into fall, we’re moving into the last quarter of 2021! Let’s reflect on some of the stories and highlights that made Q3 shine. PatternFly's third quarter in review
This quarter, we’ve moved through three PatternFly releases (2021.10-2021.12). Together, our release notes, release highlights, and Medium articles paint a high-level picture of this quarter’s story. - View the latest release notes on PatternFly.org <https://www.patternfly.org/v4/developer-resources/release-notes> - Check out the latest release highlights on GitHub <https://github.com/patternfly/patternfly-org/tree/master/release-highlights> - Read the latest PatternFly stories on Medium <https://medium.com/patternfly/tagged/patternfly> Accessibility guide: Expanding PatternFly's accessibility resources Throughout the third quarter, we’ve thought critically about what makes accessible product design and development, and how we can best empower Flyers like you to get there. We noticed our existing documentation didn’t provide a comprehensive foundation for accessibility application in products: Lots of questions surfaced, with little documented answers. We included a props table at the bottom of each component page, but we didn’t document why to use them. We shared the props we used and expected PatternFly consumers to add them based on our example — but the props table didn’t build a foundation that they could understand, apply, and replicate themselves. Copying us didn’t beget learning: So we picked up our pens and began updating and building out our accessibility docs. Our updated accessibility guidance includes: - *Accessibility fundamentals <https://www.patternfly.org/v4/accessibility/accessibility-fundamentals/>*: General knowledge to guide accessible decisions. - *PatternFly’s accessibility <https://www.patternfly.org/v4/accessibility/patternflys-accessibility>*: Accessibility measures already built into our design system. - *Product development guide <https://www.patternfly.org/v4/accessibility/product-development-guide>*: Techniques to build and assess accessible products. Complex components like alert <https://www.patternfly.org/v4/components/alert/accessibility> or alert group <https://www.patternfly.org/v4/components/alert-group/accessibility> can be tricky to implement accessibly, so we’ve added a dedicated *Accessibility* tab to guide you through key considerations and requirements. To learn more about how to implement a specific component with accessibility in mind, navigate to the *Accessibility* tab at the top of its page. Shoutout to our Accessibility Lead Jessie Huff and Accessibility Intern Bonnie Chhatrala for their work on these resources! PatternFly extensions: Combining components for common solutions Common issues can typically be solved with common solutions, so when we noticed a number of similar use cases across different products, we explored the possibility of creating a universal solution that could benefit product teams and users in each area. Enter extensions: Shareable, solution-based code that combines multiple components to address user needs that are larger, more complex, and more specific than what’s addressed with standard PatternFly components. Currently, we feature two types of extensions: 1. *Extensions (UXD extensions) *are fully supported by the Red Hat User Experience Design team and are often used by multiple Red Hat products. 2. *Community extensions* are developed and maintained by members of the PatternFly community, and are often more solution-based than core PatternFly components. They aren't audited, tested, or directly supported by the PatternFly team. So how do PatternFly extensions come to be? Let's pull back the hood on one of our latest extensions, *quick starts <https://www.patternfly.org/v4/extensions/quick-starts>*. One common use case across PatternFly-based products was user education: Users typically need a way to quickly understand and acclimate to UI complexities, something most easily accomplished with inline guidance. This need led us to the creation of quick starts <https://www.patternfly.org/v4/extensions/quick-starts>, a learning platform that enables users to quickly get started with whatever product they use by walking through guided tours of its main actions and components. After Red Hat OpenShift created the original quick start concept <https://github.com/openshift/console/pull/5975>, we partnered with them and extracted the code to a separate repo for other products to use <https://github.com/patternfly/patternfly-quickstarts>. Quick starts has since been adopted by other Red Hat products including Red Hat OpenShift Data Science (RHODS), Managed Kafka, and cloud.redhat.com. With this increased adoption, we've formalized a process for creating other UXD extensions like it by building a genuine team managed by a dedicated product owner, and differentiating PatternFly extensions from "PatternFly Labs/Innovations," our new process for exploring and vetting new ideas. Options for future UXD extensions include topology, guided tours, user preferences, and more. If you have a UXD or community extension in mind, we’d love to hear from you. To view quick starts in action, check out our quick starts demo <https://quickstarts.netlify.app/>. To learn more about community extensions and how you can contribute, visit our *Community extensions *page <https://www.patternfly.org/v4/extensions/community-extensions/>. Composable components: Empowering product customization with PatternFly The PatternFly team has a history of walking a fine line between delivering components with fully implemented functionality or delivering components that are less implementation-ready but fully customizable. We’ve regularly fielded requests to create more complex variants of our components to accommodate increasingly specific use cases. Often, these very specific components work great for quick implementation in their intended product, but don’t scale well into other products looking to customize or adjust functionality. We needed simpler building blocks to facilitate stronger implementation across most use cases. That's where *composable components* come in. Because they allow more customization from the start, composable components reduce the need for teams to attempt to sidestep or remove component functionality that doesn’t meet their needs. Instead, PatternFly consumers can compose component implementations based on their own unique criteria. While composable components open new doors for PatternFly customization, they do require you to approach implementation with more development knowledge — you’ll need to know more about your goals and the coding customizations you’ll need to get there. But copy-and-paste coders, fear not! We’re building more educational demos with embedded implementation guidance so that you have access to available customizations and all the context you’ll need to implement them successfully. With composable components on your side, you’ll no longer need to open an issue when you don’t see a component with your desired functionality baked in: Instead, you’ll be able to leverage the existing one to code your way to a solution best tailored to your product. In the past, if you didn’t see an example that exactly matched your use case in the PatternFly Sketch library, you’d need to request a new PatternFly feature and wait for us to build it. Now, composable components put that power in your hands: You can customize components tailored to your specific needs in a way that’s easier for developers to build and implement. To better empower Flyers to channel composable design, we’re continuing to build demos with implementation guidance and starting to consider how we can reconfigure the PatternFly website’s information architecture to better promote composable solutions. This organizational effort is still in the planning stages, but we’re looking to conduct user research and studies to learn how to make composable components more available to Flyers like you. In the meantime, why not help us raise composable components awareness? As you build and evaluate designs, ask us about composable solutions you can use to get the most flexible implementation! You’ll unlock new custom building capabilities, all while moving along the quickest path to implementation. With composable components, you won’t need to wait for the entire design’s HTML/CSS, React, accessibility, and usability in order to move further down the road toward a customized solution that’s best for you. Curious about composable components? Explore our available composable solutions: - *Composable table* <https://www.patternfly.org/v4/components/table>: This newer React table implementation makes maintenance, customization, and feature development a breeze by simplifying the previous legacy table component that had most features already baked in. - *Composable menu <https://www.patternfly.org/v4/demos/composable-menu>*: Menu components are intended for use with a menu toggle <https://www.patternfly.org/v4/components/menu-toggle>, but the possibilities for composable menus don’t end there. To meet your unique use case, attach a menu to any component (for example, attaching a menu to a search input <https://www.patternfly.org/v4/components/search-input/react-demos> creates an autocomplete). We’re rebuilding many of our components that feature a dropdown-like pattern to use menus and menu toggles. To view this functionality in action, check out our composable implementations of application launcher <https://www.patternfly.org/v4/demos/composable-menu/#application-launcher-using-menu-components> and context selector <https://www.patternfly.org/v4/demos/composable-menu#context-selector-using-menu-components> . - *Composable search input <https://www.patternfly.org/v4/components/search-input/react-demos>*: The latest search input demos include more instructions and implementation guidance in each demo’s description and code comments. Over time, we’re looking to add educational copy like this to more component demos and examples. Learn more about fellow Flyers: 10 UXDers, 10 questions, 10 weeks We're running a super special interview series on PatternFly Medium featuring 10 members of Red Hat User Experience Design and our PatternFly community. From UX tips and open source tricks to work-life balance and personal experiences, we'll explore 10 questions to learn more about who they are, what they do, and what advice they'd give to others working in open source and UX. With each week comes new knowledge — we're excited to share it with you. Catch up before next week's release: - *Week 0: Meet the team* <https://medium.com/patternfly/ux-design-develop-research-experts-red-hat-8de1e0e739d> - *Week 1: UX origin stories <https://medium.com/patternfly/ux-origin-stories-user-experience-red-hat-8a134712c4ee> * - *Week 2: Wish they knew <https://medium.com/patternfly/week-2-wish-they-knew-10-uxders-10-questions-10-weeks-4a48038cc1d1>* We're celebrating our PatternFly community one story at a time — let's share the pen! Join the conversation by following us on Twitter <http://twitter.com/patternfly>, participating in future interview and research opportunities, or contributing an article to PatternFly Medium <https://docs.google.com/forms/d/e/1FAIpQLSenoFuNp_GoW9gDxA5s8uklvZuGcYRMpwTfiTc0nXaG3Z3tEQ/viewform> . Discover more - PatternFly website <https://www.patternfly.org/v4/> - PatternFly Twitter <https://twitter.com/patternfly> - PatternFly Medium <https://medium.com/patternfly> - Get in touch <https://www.patternfly.org/v4/community>
_______________________________________________ PatternFly mailing list [email protected] https://listman.redhat.com/mailman/listinfo/patternfly
