1"use strict";(self.webpackChunktheuxshop=self.webpackChunktheuxshop||[]).push([[4583],{7474:(e,t,s)=>{s.d(t,{A:()=>r});s(6540);var i=s(6289),n=s(4848);function r({title:e,description:t,to:s,linkText:r="Learn more \u2192"}){return(0,n.jsxs)("div",{className:"ux-card",children:[(0,n.jsx)("h3",{className:"ux-card__title",children:e}),(0,n.jsx)("p",{className:"ux-card__description",children:t}),(0,n.jsx)(i.A,{to:s,className:"ux-card__link",children:r})]})}},5170:(e,t,s)=>{s.d(t,{A:()=>n});s(6540);var i=s(4848);function n({children:e}){return(0,i.jsx)("div",{className:"ux-card-grid",children:e})}},6107:(e,t,s)=>{s.r(t),s.d(t,{default:()=>l});s(6540);var i=s(1410),n=s(6289),r=s(7474),o=s(5170),a=s(4848);const c=[{date:"Jan 2026",title:"Accessibility checklist expanded",description:"Added WCAG 2.2 criteria and improved testing guidance."},{date:"Dec 2025",title:"Linear keyboard shortcuts documented",description:"Complete reference for all keyboard commands."},{date:"Nov 2025",title:"Forms pattern library refreshed",description:"New validation examples and mobile considerations."}];function l(){return(0,a.jsx)(i.A,{title:"Practical UX Guidance",description:"The UX Shop offers practical UX guidance, design patterns, and small tools for product teams and designers.",children:(0,a.jsxs)("main",{children:[(0,a.jsxs)("section",{className:"ux-hero",children:[(0,a.jsx)("h1",{className:"ux-hero__title",children:"Practical UX guidance, patterns, and small tools"}),(0,a.jsx)("p",{className:"ux-hero__subtitle",children:"A curated collection of design guidance, interaction patterns, and lightweight tools to help product teams ship thoughtful, accessible experiences."}),(0,a.jsxs)("div",{className:"ux-hero__actions",children:[(0,a.jsx)(n.A,{to:"/guides/ux-basics",className:"ux-button ux-button--primary",children:"Start with UX Basics"}),(0,a.jsx)(n.A,{to:"/guides",className:"ux-button ux-button--secondary",children:"Browse All Guides"})]})]}),(0,a.jsxs)("div",{className:"container",children:[(0,a.jsxs)("section",{style:{marginBottom:"4rem"},children:[(0,a.jsx)("h2",{children:"What you'll find here"}),(0,a.jsx)("p",{style:{fontSize:"1.125rem",color:"var(--ux-gray-600)",maxWidth:"680px"},children:"This site is a practice library for UX practitioners. We maintain guides on core UX principles, document common interaction patterns, and provide simple tools you can use during design reviews and usability testing."})]}),(0,a.jsxs)("section",{style:{marginBottom:"4rem"},children:[(0,a.jsx)("h2",{children:"Popular destinations"}),(0,a.jsxs)(o.A,{children:[(0,a.jsx)(r.A,{title:"UX Basics",description:"Foundational concepts: user goals, constraints, feedback loops, and the iterative design process.",to:"/guides/ux-basics"}),(0,a.jsx)(r.A,{title:"Accessibility Checklist",description:"A practical checklist organized by WCAG principles with testing steps you can follow today.",to:"/guides/accessibility-checklist"}),(0,a.jsx)(r.A,{title:"Forms Patterns",description:"Input types, validation patterns, error handling, and mobile-friendly form design.",to:"/patterns/forms"}),(0,a.jsx)(r.A,{title:"Heuristic Review Tool",description:"A printable checklist for conducting usability heuristic evaluations on any interface.",to:"/tools/heuristic-review"}),(0,a.jsx)(r.A,{title:"Linear",description:"A precision measurement tool for checking spacing, alignment, and layout consistency.",to:"https://linear.theuxshop.com/"}),(0,a.jsx)(r.A,{title:"Newsletter",description:"Monthly updates on new patterns, tool improvements, and practical UX tips.",to:"/newsletter"})]})]}),(0,a.jsxs)("section",{style:{marginBottom:"4rem"},children:[(0,a.jsx)("h2",{children:"Recent updates"}),(0,a.jsxs)("p",{style:{color:"var(--ux-gray-600)",marginBottom:"1.5rem"},children:["See the full ",(0,a.jsx)(n.A,{to:"/changelog",children:"changelog"})," for all updates."]}),(0,a.jsx)("div",{className:"ux-updates",children:c.map((e,t)=>(0,a.jsxs)("div",{className:"ux-update",children:[(0,a.jsx)("div",{className:"ux-update__date",children:e.date}),(0,a.jsxs)("div",{className:"ux-update__content",children:[(0,a.jsx)("div",{className:"ux-update__title",children:e.title}),(0,a.jsx)("div",{className:"ux-update__description",children:e.description})]})]},t))})]}),(0,a.jsx)("section",{style:{marginBottom:"4rem"},children:(0,a.jsxs)("div",{className:"ux-callout ux-callout--tip",children:[(0,a.jsx)("div",{className:"ux-callout__title",children:"Where to begin"}),(0,a.jsxs)("div",{className:"ux-callout__content",children:[(0,a.jsxs)("p",{children:["If you're new to UX or looking for a refresher, the"," ",(0,a.jsx)(n.A,{to:"/guides/ux-basics",children:"UX Basics guide"})," covers the core concepts that inform everything else on this site. From there, explore the"," ",(0,a.jsx)(n.A,{to:"/patterns",children:"patterns library"})," or try one of our"," ",(0,a.jsx)(n.A,{to:"/tools",children:"practical tools"}),"."]})," ",(0,a.jsxs)("p",{children:["Many UX teams also use AI transcription to process recorded usability sessions and research interviews. If you're evaluating tools,"," ",(0,a.jsx)("a",{href:"https://diyai.io/studio/speech-to-text/",children:"speech to text in DIY AI Studio"})," ","can help you compare options before committing to a transcription workflow."]})," "]})]})}),(0,a.jsxs)("section",{style:{marginBottom:"4rem"},children:[(0,a.jsx)("h2",{children:"Browse by category"}),(0,a.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(200px, 1fr))",gap:"1rem"},children:[(0,a.jsx)(n.A,{to:"/guides",className:"ux-button ux-button--secondary",style:{justifyContent:"center"},children:"\ud83d\udcda Guides"}),(0,a.jsx)(n.A,{to:"/patterns",className:"ux-button ux-button--secondary",style:{justifyContent:"center"},children:"\ud83e\udde9 Patterns"}),(0,a.jsx)(n.A,{to:"/tools",className:"ux-button ux-button--secondary",style:{justifyContent:"center"},children:"\ud83d\udee0\ufe0f Tools"}),(0,a.jsx)("a",{href:"https://linear.theuxshop.com/",className:"ux-button ux-button--secondary",style:{justifyContent:"center"},children:"\ud83d\udcd0 Linear"})]})]})]})]})})}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.