Frontend Dogma

“2022” Archive (4)

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