Frontend Dogma

“2022” Archive (4)

  1. DevTools Tips: How to Inspect and Debug CSS Flexbox · · , , , , , ,
  2. How I Maintain OSS Projects · · ,
  3. Comparing JAWS, NVDA, and VoiceOver · · , , , , , , , ,
  4. Don’t Overwrite Visual Labels With “aria-label” · · , ,
  5. Useful JavaScript Data Grid Libraries · · , , ,
  6. Is Design Thinking Overhyped? ·
  7. Default Exports in JavaScript Modules Are Terrible ·
  8. Accessible Lists and Tables · · , ,
  9. Neutrality Isn’t an Option When It Comes to Accessibility ·
  10. Small Steps: Celebrating Four Accessibility Wins · · ,
  11. 4 Ways to Minimize Your Dependencies in Node.js · · , ,
  12. Interpolating Numeric CSS Variables · · ,
  13. Understanding “useMemo” and “useCallback” · · ,
  14. Things Not Available When Someone Blocks All Cookies ·
  15. JavaScript Bugs Aplenty in Node.js Ecosystem—Found Automatically · · , , , , ,
  16. Cypress Testing: A Guide to Running Web Application Tests · · , ,
  17. CSS Container Queries Are Finally Here · · ,
  18. An Argument Against CSS Opacity · · , ,
  19. Should I Use a Button or a Link? · · , , ,
  20. What Makes A Great Toggle Button? II · · ,
  21. Monitor Events and Function Calls Via Console · · , ,
  22. Parents Counting Children in CSS · · ,
  23. Communication Around Digital Accessibility Must Improve: How Users and Businesses Alike Are Failing to Advance Digital Accessibility · · ,
  24. An Ideal REST API—Best Practices · · ,
  25. The Three Laws of Utility Classes · · ,
  26. Modern Alternatives to BEM · · , , , ,
  27. Making a Twitter Bot in the Year 2022 With Node.js · · ,
  28. What Is Closed Captioning? · · , ,
  29. Using Grid Named Areas to Visualize (and Reference) Your Layout · · ,
  30. On Design System Support ·
  31. Be Good-Argument-Driven, Not Data-Driven · · ,
  32. Complex Conditional Width Using “flex-basis” With “clamp” ·
  33. 20 Principles I Learned from 10 Years of Developing Software ·
  34. Designing Better Error Messages UX · · , , ,
  35. Why Your Website Should Be Under 14 kB in Size · · ,
  36. Short Note on “figure” and “figcaption” · · ,
  37. Installing and Running Node.js Bin Scripts · · ,
  38. Implementing Promisable “setTimeout” ·
  39. CSS Classes Considered Harmful · · ,
  40. Accessibility and Supporting Internet Explorer · · , , , ,
  41. TIL: You Can Access a User’s Camera With Just HTML · · ,
  42. Creative List Styling · · ,
  43. Why Every University Needs an Accessible Standard Website Template · · , ,
  44. What Is a REST API? · · ,
  45. What Customer-First Web Design Looks Like ·
  46. The Design Principle Paradox · · ,
  47. Measure What You Impact, Not What You Influence · · , ,
  48. How to Use localStorage in JavaScript: An Easy Guide · · , , ,
  49. 8 Tricks for SVG Optimization · · , ,
  50. Does Accessibility Stifle the Creative Process? · · , ,
  51. Scaling SCM Front-End Design With a Design System · · ,
  52. What’s the Value of a Design System? · · ,
  53. A Handy Use for Cascade Layers · · ,
  54. Exploring the Underrated “output” Element ·
  55. Learn 5 Optimization Tips for Webpack Step by Step · · , ,
  56. Mac VoiceOver Testing the Simple Way · · , , , , , ,
  57. CSS Grid and Custom Shapes II · · ,
  58. Bring Focus to the First Form Field With an Error · · , ,
  59. Meet the Top Layer: A Solution to “z-index:10000” ·
  60. Why User Personas Matter in UX Design · · , , ,
  61. What Makes a Great Toggle Button? · · ,
  62. Prepare for WCAG 2.2 and Beyond · · , , ,
  63. Design Systems: Prototyping on Steroids · · ,
  64. Conducting an Effective Web-Site UX Audit · · ,
  65. Class-Less CSS Frameworks · · , , ,
  66. Advanced TypeScript Patterns: API Contracts · · ,
  67. A Simple “clamp()” Function in PHP · · ,
  68. You’re Not Using HTTP Status Codes Right · · ,
  69. A Guide to Using User-Experience Research Methods · · , ,
  70. Scaling a System · · ,
  71. React Query vs. SWR · · , , ,
  72. Use the Right Container Query Syntax · · ,
  73. Using “:has()” as a CSS Parent Selector and Much More · · ,
  74. Inclusion Beats Optimization · · , ,
  75. When Do You Use CSS Columns? · · ,
  76. Optimize Data Fetching · · ,
  77. An Introduction to Context Propagation in JavaScript · · ,
  78. React Re-Renders Guide: Preventing Unnecessary Re-Renders · · , ,
  79. Better Conditionals in CSS Media Queries With Range Syntax · · ,
  80. Can Browsers Optimize the Loading of Third-Party Resources? · · , ,
  81. Outline Is Your Friend · · ,
  82. How the CSS “:is”, “:where”, and “:has” Pseudo-Class Selectors Work · · ,
  83. Dependency Injection in JS/TS · · ,
  84. Designing a Better Back Button UX · · , ,
  85. Introduction to Screen Readers (Desktop Edition) · · , , , , , ,
  86. Why React Re-Renders · · ,
  87. Color and Contrast · · , , ,
  88. Top 9 Ways to Become a Successful Self-Taught Developer · · ,
  89. Check Heading Accessibility Using the WAVE Tool · · , , , , ,
  90. CSS Grid and Custom Shapes · · ,
  91. Accessible User Experience and A/B Testing · · , ,
  92. Table Column Alignment With Variable Transforms · · , ,
  93. Building Accessible Select Components in React · · , , ,
  94. What Was That Media Query Code Again? · · , ,
  95. Tip: Use “fetchpriority=high” to Load Your LCP Hero Image Sooner · · , ,
  96. 5 Modern CLI Tools That Help Boost Your Productivity · · ,
  97. The Console API · · , ,
  98. An Introduction to Constraint Based Design Systems · · ,
  99. (Re-)Introducing Gatsby, a Reactive Site Generator · · , , , , ,
  100. Creative CSS Layout · · , , ,
  101. Custom Event Naming Conventions · · , ,
  102. On Ratings and Meters · · , ,
  103. If You’re Not Checking, You’re Guessing · · ,
  104. Automation and Accessibility—What You Need to Know · · , ,
  105. Results of Quick Testing of Documentation Tools’ Accessibility · · , ,
  106. TypeScript: It’s Not Actually Validating Your Types · · ,
  107. Do You Know About “overflow: clip”? ·
  108. TypeScript vs. JavaScript: Which One You Should Use, and Why · · , ,
  109. Modern CSS Selectors · · ,
  110. How and Why We Removed jQuery from GOV.UK · · , ,
  111. Here, Here, and Here ·
  112. Designing for Long-Form Articles · · ,
  113. The Death of Mozilla Is the Death of the Open Web · · ,
  114. SEO Links Obfuscation and Accessibility Problems · · , , ,
  115. Code Golfing Tips and Tricks: How to Minify Your JavaScript Code · · , , ,
  116. How to Research Components and Patterns: Common Challenges and How to Overcome Them · · , ,
  117. Brief Note on Calendar Tables · · , ,
  118. Defining “Integration” Tests ·
  119. Core Web Vitals Tools to Boost Your Web Performance Scores · · , ,
  120. Accessibility Is Writing · · ,
  121. The JavaScript Paradox ·
  122. Zooming Images in a Grid Layout · · ,
  123. Dark Mode With Design Tokens · · ,
  124. Bringing Perspective to CSS ·
  125. 5 Good Practices to Scale Your React Projects Easily · · , ,
  126. Capturing Images and Videos from the Camera of Mobile Devices Using HTML · · , ,
  127. No Demo [Website] Reno · · ,
  128. The Infinite Marquee · · , ,
  129. How to Use Multithreading in Node.js · · , ,
  130. How I Added Scroll Snapping to My Twitter Timeline · · , ,
  131. Polyhierarchy in Information Architecture · · ,
  132. Not All Zeros Are Equal ·
  133. 5 Heading Accessibility Issues and How to Fix Them · · , ,
  134. What Are Best Practices for Creating Alt Text? · · , , ,
  135. AI-Generated Images from AI-Generated Alt Text · · , , ,
  136. One-Dimensional Website Optimization Considered Harmful · · ,
  137. Light/Dark Mode · · , , ,
  138. One Year of Coding—Recommendations for Beginners from a Beginner · · , ,
  139. “:has()”: The Family Selector · · ,
  140. Introducing the New npm Dependency Selector Syntax · · ,
  141. Migration from jQuery to Next.js: A Guide · · , , ,
  142. Introduction to SolidJS · · ,
  143. Making a Website Under 1 kB · · , ,
  144. Finer Grained Control over CSS Transforms With Individual Transform Properties ·
  145. A Delightful Guide to Culture at Mamo (Inspired by Khalil Gibran) · · , ,
  146. Popular Node.js Patterns and Tools to Re-Consider · · ,
  147. IE: RIP or BRB? · · , , , ,
  148. CSS Border Animations · · , ,
  149. Exploring CSS Grid’s Implicit Grid and Auto-Placement Powers · · ,
  150. Ruby Styling · · ,
  151. Fluid Sizing Instead of Multiple Media Queries? · · ,
  152. The Importance of Clean Code in Your Startup’s Success ·
  153. Fitts’s Law and Its Applications in UX · · ,
  154. Checking If a JavaScript Native Function Is Monkey Patched · · ,
  155. How to Add a Subtle Gradient on Top of an Image Using CSS · · , ,
  156. Firefox (and Other Browsers), Forgotten? · · , , ,
  157. 10+ Things I Always Set Up in Git When I Prepare a New Environment · · , ,
  158. Which Generator Builds Markdown the Fastest? · · , , ,
  159. Use the Active Voice to Transform Your Design System Documentation · · , ,
  160. The Horizontal Overflow Problem ·
  161. Quick Tip: Negative Animation Delay · · , ,
  162. When Will Scrum Die? · · , , ,
  163. 500 ms to 1.7 ms in React: A Journey and a Checklist · · ,
  164. Recreating MDN’s Truncated Text Effect · · ,
  165. Detecting CSS Selector Support With JavaScript · · , , ,
  166. Testable Frontend: The Good, the Bad, and the Flaky ·
  167. Underengineer Your Websites · · , ,
  168. The Advanced Guide to the CSS “:has()” Selector · · , ,
  169. Adding Observability to Your Jest Tests · · , ,
  170. 8 Simple Steps to Complete a Technical SEO Audit · · ,
  171. Adventures in Text Rendering: Kerning and Glyph Atlases · · ,
  172. CSS Minimal Dark Mode Toggle Button · · , ,
  173. Why I’m Learning Typescript ·
  174. 3 Simple Ways to Center an Element Using CSS · · ,
  175. You Don’t Need Microservices ·
  176. Design Systems for Humans · · ,
  177. Abbreviations Suck · · ,
  178. Django Tips and Tricks · · ,
  179. UX Principles That Include Cognitive Accessibility · · , ,
  180. The 10 Affirmations of Good Digital Accessibility ·
  181. Speaking Up and Speaking Out: Tactical Communication in Accessibility · · ,
  182. Neubrutalism Style in UX: A Twist on the Dominant Modern Minimalist · · , ,
  183. Maintenance Matters · · , , , , ,
  184. Introducing Even More Security Enhancements to npm · · ,
  185. #ADA32: The ADA Has Applied to Digital for Decades · · ,
  186. A Good Reset · · ,
  187. Solving the “Dangler” Conundrum With Container Queries and “:has()” · · ,
  188. Priority Hints—What Your Browser Doesn’t Know (Yet) · · ,
  189. Your Code Doesn’t Have to Be a Mess ·
  190. Typography in Web Design · · ,
  191. Everything You Need to Know About JavaScript Import Maps ·
  192. “<article>” vs. “<section>”: How to Choose the Right One · · , ,
  193. 5 Best UX Careers to Pursue in 2022 · · ,
  194. Clean Architecture: Applying With React · · ,
  195. Mobile UX: Study Guide · · , , , ,
  196. The History of JavaScript · · ,
  197. Ancient Web Browsers · · ,
  198. Intro to Serverless Functions · · , , ,
  199. Understanding CSS “:has()” · · , ,
  200. Say No to Tailwind, Embrace Plain CSS · · , ,
  201. Type Annotations in JavaScript · · ,
  202. Definitive Guide to CAPTCHA Accessibility · · , ,
  203. With “:focus-visible”, You Can Have Focus Styles When It Makes Sense · · , , , ,
  204. 20 Git Commands Every Developer Should Know · · ,
  205. Roundup of Recent Document Outline Chatter · · , ,
  206. Vector Animations With Figma and SVG Animate · · , ,
  207. Top Layer Support in Chrome DevTools · · , , , ,
  208. Where’s the Fun in Accessibility? · · ,
  209. Research Insight: Accessibility of Images · · , , ,
  210. RedwoodJS vs. BlitzJS: The Future of Fullstack JavaScript Meta-Frameworks · · , ,
  211. Introduction to SvelteKit · · , ,
  212. Front-End Internationalisation Tips · · , , ,
  213. Escaping the sRGB Prison · · ,
  214. Creating an App Using Drag and Drop With React Without Libraries ·
  215. Powerful Image Optimization Tools · · , , , ,
  216. Create Complex Transitions With Individual CSS Transform Properties · · , ,
  217. Rethinking Device Emulation in Browsers · · , ,
  218. An Introduction to Multithreading in Node.js · · , ,
  219. Expert Tips for Color Accessibility on the Web · · , ,
  220. Subheadings, Subtitles, Alternative Titles, and Taglines in HTML · · , , ,
  221. The 10 Most Common JavaScript Issues Developers Face · · ,
  222. 15 Common Beginner JavaScript Mistakes · · ,
  223. Logical Properties for Useful Shorthands · · ,
  224. JavaScript SDK “Package Size Is Massive”—So We Reduced It by 29% · · , ,
  225. Useful Tips and Tricks in JavaScript · · ,
  226. How Scrum With Kanban Works · · , , ,
  227. How Did REST Come to Mean the Opposite of REST? ·
  228. Abbreviations Can Be Problematic · · ,
  229. Why I No Longer Care What People “Like” or “Don’t Like” ·
  230. What Is WAI? The Web Accessibility Initiative ·
  231. What Is Passwordless Authentication and How to Implement It · · , ,
  232. JSON Creator Douglas Crockford Interview · · ,
  233. Hacking Javascript Objects · · ,
  234. 7 Tips for Clean React TypeScript Code You Must Know · · , ,
  235. Can SVG Symbols Affect Web Performance? · · ,
  236. An Approach to Continuous Learning · · ,
  237. CSS Gradient Background from Figma to CodePen · · , , ,
  238. Use Firefox for Accessibility Testing · · , , , ,
  239. Using Grids in Interface Designs · · ,
  240. Welcome to the Dark Side · · , ,
  241. What Does x% of Issues Mean? · · ,
  242. 7 Quick Facts About WCAG 2.2 · · , ,
  243. Working With File System Paths on Node.js · · ,
  244. Could Sustainable Websites Increase Energy Consumption? ·
  245. The Hidden History of Screen Readers · · , , , ,
  246. Web Accessibility Laws and Policies · · , , ,
  247. What Is the Best Way to Mark Up an Exclusive Button Group? · · , , ,
  248. Perceived Affordances and the Functionality Mismatch · · , ,
  249. Minimal Social Markup · · , ,
  250. My War on Animation · · ,