Frontend Dogma

News and Views in Frontend Development (4)

(Explore all topics. Stay informed per feed and on Twitter.)

  1. The Story of the Custom Scrollbar Using CSS (tweet this) · · ,
  2. The “Form” Element Created the Modern Web—Was It a Big Mistake? (tweet this) · · , ,
  3. Processing Arrays Non-Destructively: “for-of” vs. “.reduce()” vs. “.flatMap()” (tweet this) · · , ,
  4. npm Security Update: Attack Campaign Using Stolen OAuth Tokens (tweet this) · · , , ,
  5. Manage Accessible Design System Themes with CSS “color-contrast()” (tweet this) · · , ,
  6. How to Fix: “Buttons Do Not Have Accessible Names” (tweet this) · · ,
  7. 8 Shocking HTML Tips You Probably Don’t Know About (tweet this) · · ,
  8. Why Are Iframe Titles Important for Accessibility? (tweet this) · · , ,
  9. Understanding Weak Reference in JavaScript (tweet this) · ·
  10. Single Page Applications (tweet this) · ·
  11. Making Headers Sticky Using CSS for a Better Reading Experience (tweet this) · · , ,
  12. JavaScript Closures, Explained (tweet this) · ·
  13. Customizing Color Fonts on the Web (tweet this) · · , ,
  14. CSS: Absolutely Positioning Things Relatively (tweet this) · · ,
  15. A Perfect Table of Contents with HTML and CSS (tweet this) · · ,
  16. Snyk Finds 200+ Malicious npm Packages, Including Cobalt Strike Dependency Confusion Attacks (tweet this) · · , , ,
  17. Inclusive Design 101 (tweet this) · · ,
  18. How to Position Your Design System Team for Success (tweet this) · · , ,
  19. Four Tradeoffs When Designing Navigation Menus (tweet this) · · ,
  20. Advocating for Your Design System (tweet this) · ·
  21. Lesser-Known and Underused CSS Features in 2022 (tweet this) · ·
  22. Dialog Components: Go Native HTML or Roll Your Own? (tweet this) · · ,
  23. A Guide to Writing Industry Standard Git Commit Messages (tweet this) · · , ,
  24. 5 Things I’d Want to See Improved in WordPress Core (tweet this) · ·
  25. 15 Sprint Review Anti-Patterns—Scrum Anti-Patterns Guide 2022 (tweet this) · · , , ,
  26. Accessibility from Different Perspectives (tweet this) · ·
  27. The Balance Has Shifted Away from SPAs (tweet this) · ·
  28. Triaging WCAG 2.1 Level AAA (tweet this) · · , ,
  29. Fun with CSS Combinators (tweet this) · · ,
  30. First Look at the CSS “object-view-box” Property (tweet this) · ·
  31. What We Can Learn from Remix (tweet this) · · ,
  32. Web Development === Accessibility (tweet this) · · ,
  33. Web Accessibility Is Broken—It’s Time to Fix It (tweet this) · · ,
  34. Use @ supports At-Rule for Feature Detection in CSS (tweet this) · · , , ,
  35. Thinking Colors: Balancing Between Visual and Abstract (tweet this) · ·
  36. The Importance of Organizational Leadership in Developing an Accessibility Culture: Buy-In, Metrics, and Structure (tweet this) · · , , , ,
  37. React Hooks Best Practices in 2022 (tweet this) · · ,
  38. React Accessibility Resources (tweet this) · · , ,
  39. Patterns (tweet this) · · , ,
  40. Let’s Make Accessibility Boring Again (tweet this) · ·
  41. Automate Accessibility Tests with Storybook (tweet this) · · , , ,
  42. Accessibility Not-Checklist (tweet this) · · , ,
  43. 4 Web Accessibility Remediation Mistakes to Avoid (tweet this) · ·
  44. The Rise and Fall of Neumorphism (tweet this) · ·
  45. RFC 9239: Updates to ECMAScript Media Types (tweet this) · · ,
  46. Quick and Dirty Text Diffing (tweet this) · ·
  47. How to Ask for a Promotion (tweet this) · ·
  48. Conditionally Loading CSS or Any Resource Using Media Queries (tweet this) · · , ,
  49. Building a Button Component (tweet this) · · , , , ,
  50. WCAG 2.2 and WCAG 3 Status Updates (tweet this) · · , ,
  51. UI and UX Micro-Tips (tweet this) · · , ,
  52. The Modern Way to Create and Host a WordPress Site (tweet this) · · ,
  53. The Forgotten Benefits of “Low Tech” User Interfaces (tweet this) · ·
  54. Reduce Array of Objects to an Object in JavaScript (tweet this) · · ,
  55. How the HTML “lang” Attribute Helps Accessibility (tweet this) · · , ,
  56. :where() :is() :has()? New CSS Selectors That Make Your Life Easier (tweet this) · · ,
  57. Web Applications 101 (tweet this) · · ,
  58. Unpack Arrays Conditionally in PHP (tweet this) · · ,
  59. Unexpectedly HTTPS? (tweet this) · · ,
  60. The Era of Rebellious Web Design Is Here (tweet this) · ·
  61. Rethinking Server-Timing as a Critical Monitoring Tool (tweet this) · · , , ,
  62. Quick Tip: You Might Not Need “calc()” (tweet this) · · ,
  63. Peering into the Accessibility of Dark Mode (tweet this) · · ,
  64. Color Alignment for Multiple Design Systems (tweet this) · · ,
  65. Building a Design System with Eleventy (tweet this) · · ,
  66. An Affordable Work-from-Home Setup for Remote Workers (tweet this) · ·
  67. 9 Ways to Design Inclusive Content (tweet this) · · ,
  68. 24×24 Pixel Cursor Bookmarklet (tweet this) · · , , ,
  69. Personas vs. Archetypes (tweet this) · · , , , ,
  70. More Common Accessibility Issues That You Can Fix Today (tweet this) · ·
  71. Keyboard Testing: The A11y Enhancement to Your Definition of Done (tweet this) · · ,
  72. Call to Action Examples (tweet this) · · ,
  73. Master the “:nth-child()” Pseudo-Class (tweet this) · · , ,
  74. Don’t Fight the Browser Preload Scanner (tweet this) · · , , ,
  75. Does Javascript Make My Site Less Accessible? (tweet this) · · , ,
  76. Cool Hover Effects That Use CSS Text Shadow (tweet this) · · ,
  77. A Designer’s Journey of Ignorance, Resentment, and Wisdom (tweet this) · ·
  78. W3C TAG Ethical Web Principles (tweet this) · · ,
  79. Tokens as Intents (tweet this) · · , ,
  80. Light and Dark Mode in Just 14 Lines of CSS (tweet this) · · ,
  81. How to Use Google CrUX to Analyze and Compare the Performance of JS Frameworks (tweet this) · · , , ,
  82. Debugging Accessibility with Chrome DevTools (tweet this) · · , , ,
  83. Bringing Page Transitions to the Web (tweet this) · · , ,
  84. XHTML Syntax Is Still Worth Using (tweet this) · ·
  85. Why WCAG 2.2 Is Still in the Oven (tweet this) · · ,
  86. State of CSS 2022 (tweet this) · ·
  87. On Design Thinking (tweet this) · ·
  88. How to Learn JavaScript Fast: Six Simple Mind Tricks (tweet this) · · , ,
  89. Divs Are Bad! (tweet this) · · ,
  90. Designing for Web Accessibility in 60 Seconds (tweet this) · ·
  91. Bridging the Gap (tweet this) · · ,
  92. You Don’t Need “void 0” (tweet this) · ·
  93. Under the Hood: React vs. Vue vs. Svelte (tweet this) · · , , , ,
  94. The Complete Modern React Developer 2022 (tweet this) · · ,
  95. Magical SVG Techniques (tweet this) · · , ,
  96. Cron Jobs: A Comprehensive Guide (tweet this) · · , ,
  97. 2 Approaches to Accessibility on the Web (tweet this) · · ,
  98. Why SEO Is a Great Investment, Not Just a Cost (tweet this) · · ,
  99. Understanding User Behaviors Across Surfaces (tweet this) · ·
  100. The Road to Universal JavaScript (tweet this) · ·
  101. “Someone Should Build X for the Web”—Why Not You? (tweet this) · ·
  102. Reinventing W3C Governance (tweet this) · ·
  103. Performance Game Changer: Browser Back/Forward Cache (tweet this) · · , , ,
  104. Frontend Versus Backend Web Development (tweet this) · · ,
  105. A Management Maturity Model for Performance (tweet this) · ·
  106. A Different View into Accessibility Overlays (tweet this) · · , , , ,
  107. What’s Your Heading? (tweet this) · · , ,
  108. My Opinion on What Makes a Good Code Review (tweet this) · · , ,
  109. Scaling CSS Layout Beyond Pixels (tweet this) · · , ,
  110. Top 2021 CSS Frameworks Report: Validation (tweet this) · · , , , ,
  111. Learn CSS Subgrid (tweet this) · · ,
  112. How to Use the GitHub Pulls API to Manage Pull Requests (tweet this) · · ,
  113. Resilience, Flexibility, and Immediacy: Working with Headless Systems (tweet this) · · , ,
  114. Practical Use Cases for “:has()” Pseudo-Class (tweet this) · · , ,
  115. Please, Stop Disabling Zoom (tweet this) · · ,
  116. Master Higher-Order Functions in JavaScript (tweet this) · ·
  117. How to Use Videos with Alpha Transparency on the Web (tweet this) · · ,
  118. Get to Know Your Browser’s Performance Profiler (tweet this) · · , ,
  119. Fetch API Is [the] New Old Version of AJAX (tweet this) · · ,
  120. A Guide to Writing About Digital Accessibility (tweet this) · · , ,
  121. 12 Modern CSS Techniques for Older CSS Problems (tweet this) · · , ,
  122. The Evolution of WCAG: A Postcard from the Front Lines (tweet this) · · , , ,
  123. JavaScript Containers (tweet this) · · ,
  124. How Not to Do Accessible Design (tweet this) · · , ,
  125. Developing a Low-Touch Adoption Strategy for a New Design System (tweet this) · · ,
  126. Designing a Better Language Selector (tweet this) · · , , ,
  127. Design Patterns: How to Create Simple Interfaces (tweet this) · · ,
  128. You Don’t Need a UI Framework (tweet this) · · , ,
  129. Why I Don’t Miss React: A Story About Using the Platform (tweet this) · ·
  130. Microsoft Edge Overtakes Safari as World’s Second Most Popular Desktop Browser (tweet this) · · , ,
  131. Lerna Has Gone—Which Monorepo Is Right for a Node.js Backend Now? (tweet this) · · , , ,
  132. It’s Time We Fix the Unethical Design of Cookie Consent Windows (tweet this) · · , , ,
  133. In Defence of the Single Page Application (tweet this) · ·
  134. How to Create a Color Palette for Your Design System (tweet this) · · ,
  135. Contextual Spacing for Intrinsic Web Design (tweet this) · · , ,
  136. 5 Simple Productivity Tips for Developers (tweet this) · · ,
  137. Writing Better CSS (tweet this) · · , ,
  138. If Design Principles Are for Designs, Then Design Values Are for Designers (tweet this) · · ,
  139. Ethical Design Network (tweet this) · · , ,
  140. Deep Dive into Text Wrapping and Word Breaking (tweet this) · ·
  141. Creating Realistic Reflections with CSS (tweet this) · · ,
  142. 8 JavaScript Quiz [Questions] That May Confuse You (tweet this) · · ,
  143. Under-Engineered Multi-Selects (tweet this) · · , ,
  144. Design System Documentation Best Practices (tweet this) · · , ,
  145. How to Reduce Figma Memory Usage (tweet this) · ·
  146. Creating a Firework Effect with CSS (tweet this) · · ,
  147. How Web Browsers Work: Parsing the CSS (tweet this) · · , ,
  148. Foundations: Lists (tweet this) · · ,
  149. Understanding the Performance Impact of Anti-Flicker Snippets (tweet this) · · ,
  150. The CSS Art Paradox (tweet this) · · , , ,
  151. The Complete Guide to Regular Expressions (Regex) (tweet this) · · ,
  152. Server-Side vs. Client-Side Analytics (tweet this) · · ,
  153. My Browser Support Strategy (tweet this) · · , , ,
  154. Let’s Keep the “Content” in WCAG (tweet this) · · , ,
  155. Introducing “inert” (tweet this) · · ,
  156. How to Build Node.js REST API with MySQL (tweet this) · · , , ,
  157. CTA Modal: How to Build a Web Component (tweet this) · · ,
  158. Common Frontend Interview Questions I’ve Been Asked (tweet this) · · , , ,
  159. Best Practices for Integrating Content Design in Your Design System (tweet this) · · , , ,
  160. The 5 Golden Rules of Code Reviews (tweet this) · · , ,
  161. Stop Removing Focus (tweet this) · · ,
  162. Learn to Code with JavaScript: The Most Popular Programming Language on Earth (tweet this) · · ,
  163. Cool Hover Effects That Use Background Properties (tweet this) · · ,
  164. A Practical Guide to Aspect Ratio in CSS (tweet this) · · , ,
  165. Plain Old Semantic HTML: A Perfect Basis for Accessibility (tweet this) · · , ,
  166. Non-Interactive Elements with the “inert” Attribute (tweet this) · · ,
  167. Is Measuring Speed a Useful Metric for Design Systems? (tweet this) · · , , ,
  168. Flexibly Centering an Element with Side-Aligned Content (tweet this) · · ,
  169. Deploy Your First Website Without Leaving Your IDE (tweet this) · ·
  170. Apple’s Grip on iOS Browser Engines Disallowed Under Latest Draft EU Rules (tweet this) · · , ,
  171. A Guide to Task-Based UX Metrics (tweet this) · · , ,
  172. The “Dark Yellow Problem” in Design System Color Palettes (tweet this) · · ,
  173. Testing Figma Components (tweet this) · · , ,
  174. Supercharge Your Design System with Design Tokens (tweet this) · · ,
  175. Mobile App Versus Web Site: Which Is Better for Your Business? (tweet this) · · , ,
  176. How Web Browsers Work: Parsing the HTML (tweet this) · · , ,
  177. Four Eras of JavaScript Frameworks (tweet this) · · , ,
  178. Deep Dive into Top Web Developer Pain Points (tweet this) · ·
  179. Build a Lightweight Web Component with Lit.js (tweet this) · · ,
  180. 9 Useful Principles of UX Design (tweet this) · · , ,
  181. 8 Ways to Make Website Accessibility Easier (and Less Expensive) (tweet this) · ·
  182. 16 Top Design Trends for 2022 (tweet this) · · ,
  183. 11 Steps to Keep Figma Clean (tweet this) · · , ,
  184. Best Font for Online Reading: No Single Answer (tweet this) · · , , ,
  185. Atomic Design 2022: What We Can Learn from Eames and Other Design Giants (tweet this) · ·
  186. Writing Strong Front-End Test Element Locators (tweet this) · ·
  187. Why Your CSS Is Always Messy and Chaotic—Understanding CSS Complexity (tweet this) · · ,
  188. Progressive Enhancement and HTML Forms: Use “FormData” (tweet this) · · , ,
  189. How Web Browsers Work: Navigation (tweet this) · · ,
  190. Web Color Is Still Broken (tweet this) · · , ,
  191. TypeScript Tips and Tricks (tweet this) · · , , ,
  192. Mastering CSS Transitions with React 18 (tweet this) · · , ,
  193. Building a Combined CSS Aspect Ratio Grid (tweet this) · · ,
  194. Why Learn to Code? 17 Benefits of Learning to Code (tweet this) · · , ,
  195. The Future of CSS: CSS Toggles (tweet this) · ·
  196. Productivity Tips and Tools for a More Efficient Workflow (tweet this) · · , , ,
  197. Faster Initialization of Instances with New Class Features (tweet this) · · , ,
  198. Debugging Node Serverless Functions on AWS Lambda (tweet this) · · , , ,
  199. Brief Note on Buttons, Enter, and Space (tweet this) · ·
  200. Beyond WCAG: Losing Spoons Online (tweet this) · · , ,