Frontend Dogma

News and Tools for Frontend Developers (14)

(Stay up-to-date on all topics by RSS feed, on Mastodon, or through other channels.)

  1. Transition Between Pages Smoothly With a Single Line of Code (by) · · ,
  2. Top Tips From a Web Accessibility Evaluator at WebAIM (by/via) · · , ,
  3. Tips for Upgrading Your Techstack for Faster Frontend Development (by/via) · · , , , ,
  4. The Novel Engines: Servo (by+/via) · · , , , ,
  5. Qwik Introduction—a Framework That Goes Fast (by) · · , ,
  6. Mapping Typography (by/via) · · , ,
  7. Magnification and Zoom Accessibility Guide—Everything You Need to Know (via) · · , , ,
  8. Live Regions in React (by) · · , , ,
  9. Learn How to Use Hue in CSS Colors With HSL (by/via) · · , ,
  10. Going Beyond Constants With Custom Properties (by/via) · · ,
  11. Faking a “:snapped” Selector With Scroll-Driven Animations (by/via) · · , , ,
  12. AI Is Killing the Old Web, and the New Web Struggles to Be Born (by/via) · · ,
  13. Mixing Colors With CSS (by) · · ,
  14. An Introduction to Parser Combinators (by) · · ,
  15. A Beginner’s Guide to Laravel: Introduction and Key Features · · , ,
  16. XML Is the Future (by) · · ,
  17. WebSockets 101 (by/via) · · , ,
  18. Introduction to Cloud Computing · · ,
  19. Using BEM for Design System Tokens (by) · · , , ,
  20. Understanding Authorization Before Authentication: Enhancing Web API Security (by/via) · · , , , ,
  21. Text Wrap Pretty Is Coming to CSS (by) · · ,
  22. Debugging INP (by) · · , , ,
  23. Converting [a] JavaScript Codebase to TypeScript (by/via) · · , , ,
  24. Choosing a Color Palette (via) · · , , ,
  25. An Introduction to Command Injection Vulnerabilities in Node.js and JavaScript (by) · · , , , ,
  26. All You Need to Know About CORS and CORS Errors (by/via) · · , ,
  27. The Unlikely Story of UTF-8: The Text Encoding of the Web (by) · · ,
  28. The Cost of JavaScript 2023 (by) · · , ,
  29. Introducing the MDN Playground: Bring Your Code to Life (via) · · , ,
  30. Future CSS: State Container Queries (by) · · ,
  31. Component Driven User Interface Testing (CDUIT) · · ,
  32. Announcing Svelte 4 (via) · · ,
  33. What Exactly Is [the] “:root” Pseudo-Element in CSS? (by/via) · · , ,
  34. WCAG 2.2 Removes 4.1.1 Parsing and How axe-core Is Impacted (by/via) · · , , ,
  35. Using Multiple Selectors With JavaScript Selector Methods (by) · · ,
  36. Too Much JavaScript? Why the Frontend Needs to Build Better (by/via) · · , ,
  37. The 5 Pillars of Every HTTP Request · ·
  38. How Designers Can Beat AI at Design (by/via) · · ,
  39. Designing for Inclusion (by/via) · · , ,
  40. Design Systems Directory (by) · · ,
  41. CSS in Micro Frontends (by) · · ,
  42. Cascade Layers Are Useless * (by) · · ,
  43. W3C Launch Their New Website (by/via) · ·
  44. Three Key Principles for an Accessible Website (by+/via) · · ,
  45. Thoughts From “Meet Safari for Spatial Computing” (by) · · , , , ,
  46. Style Your RSS Feed (by) · · , , ,
  47. State of CSS 2023 (by/via) · · ,
  48. Making Your Design Tokens Future-Proof (by) · ·
  49. Creating a Flexible Design Token Taxonomy for Intuit’s Design System (by) · · ,
  50. Continuous Accessibility (by) · · , ,
  51. Authentication vs. Authorization · · , ,
  52. Why UX Testing Is Critical to Your Web Site’s Success (by/via) · · ,
  53. Radix UI Component With Next.js and Tailwind CSS (by) · · , , , ,
  54. Packaging and Selling a Node.js App (by/via) · ·
  55. Gatsby Headaches and How to Cure Them: I18N II (by/via) · · ,
  56. Can Web Developers Be Held Liable? (by/via) · · ,
  57. Button Types (by) · · ,
  58. Balancing Users’ Needs and Business Goals in UX Design (via) · · ,
  59. Balancing Users’ Data Privacy and the User Experience (by/via) · · ,
  60. The Problem With Sticky Menus That Appear on Scroll and What to Do Instead (by) · · , ,
  61. The New CSS (by) · · , ,
  62. Import Maps to Natively Import JavaScript Modules Using Bare Names (by) · ·
  63. How to Clean Up Your Local Repository With Git Commands (by/via) · · , , ,
  64. It’s Time for Dimensional Thinking in Design (via) · · ,
  65. IndexedDB Tutorial for Beginners: A Comprehensive Guide With Coding Examples · · , , , ,
  66. Git Concepts Everyone Should Know (by) · · ,
  67. TypeScript 5.2’s New Keyword: “using” (by) · ·
  68. The Five Types of People Who Produce Inaccessible Code (by) · · ,
  69. Standardising Design Tokens (by) · · ,
  70. Scoping (by) · · ,
  71. Create React UI Lib: Component Library Speedrun (by) · · , , ,
  72. What’s UnAI-Able (by/via) · ·
  73. What Are Deceptive Patterns? (via) · · ,
  74. Top 10 Things You Should Add While Coding: Valuable Tips for Programmers (by) · · ,
  75. The Next Phase of Eleventy: Return of the Side Project (by) · ·
  76. HTML Imports (by+/via) · ·
  77. How to Add a CSS Reveal Animation to Your Images (by/via) · · , , ,
  78. Django: A Security Improvement Coming to “format_html()” (by) · · , ,
  79. Creating Scroll-Triggered Animations by Combining Scroll-Driven Animations, Custom Properties, Style Queries, and Transitions (by/via) · · , , , , ,
  80. An Explosion in Software Engineers Using AI Coding Tools? (by) · · , ,
  81. A Guide to Coding Standards to Improve Code Quality (by/via) · · , , , ,
  82. 6 Quick Tests You Can Do to Test Your Forms for Accessibility (by) · · , ,
  83. Cyclic Dependency Space Toggles (by) · · , ,
  84. Using Color Wheel Combinations in Your Designs (via) · · ,
  85. Simplify Email Development With MJML: A Beginner’s Guide · · , ,
  86. Puppeteer in Node.js: More Antipatterns to Avoid (via) · · , , , ,
  87. npm Won’t Publish Packages Containing the Word “keygen” · · , ,
  88. How to Build Server-Side Rendered (SSR) Svelte Apps With SvelteKit (by/via) · · , , , ,
  89. How (and Should?) We Stop the Infinite Scroll (via) · · ,
  90. Design vs. Accessibility and the CSS “visually-hidden” Class (by/via) · · , , ,
  91. When and Why to Use a Click Test (via) · · ,
  92. Tuesday, June 20, 2023 Security Releases (by/via) · · , ,
  93. The Gotchas of CSS Nesting (by) · · ,
  94. Rebuilding a Comment Component With Modern CSS (by) · · , ,
  95. Nuxt in 100 Seconds (by/via) · · , ,
  96. Positioning Anchored Popovers (by) · · ,
  97. Naming Components · · , ,
  98. “margin-trim” as a Best Practice? (by) · ·
  99. Gatsby Headaches and How to Cure Them: I18N (by/via) · · ,
  100. Chrome for Testing: Reliable Downloads for Browser Automation (by/via) · · , , ,
  101. Blur Vignette Effect in CSS (by) · · ,
  102. The Continuing Tragedy of CSS: Thoughts From CSS Day 2023 (by) · · ,
  103. How to Learn Programming (by) · · , ,
  104. How to Highlight Required and Optional Form Fields (by) · · , , ,
  105. CSS! CSS! CSS! (by) · · ,
  106. Bottom Sheets: Definition and UX Guidelines (by/via) · · , , ,
  107. You Can Stop Using “user-scalable=no” and “maximum-scale=1” in Viewport Meta Tags Now (by) · · , , ,
  108. That’s Not How I Wrote CSS Three Years Ago (by/via) · · , ,
  109. Shining Light on the Shadow DOM (by/via) · · , ,
  110. Modern CSS for Dynamic Component-Based Architecture (by) · · , ,
  111. Liven Up Your Websites With Scroll-Driven Animations and View Transitions (by/via) · · , , , ,
  112. Internet Explorer: The 1st Browser to Support CSS (by+/via) · · , , , , , ,
  113. Design Under Constraints: Challenges, Opportunities, and Practical Strategies (by/via) · · ,
  114. CSS Containers, What Do They Know? (by/via) · · , ,
  115. Best Animation Libraries for React (by) · · , , ,
  116. An Introduction to DevOps · · ,
  117. Why Doesn’t CSS Have Scope? (by/via) · · , ,
  118. The Universal Focus State (by) · · , ,
  119. The CSS “overscroll‑behavior” Property Can Be Used to Disable Default Browser Gestures (by/via) · · ,
  120. Style Recalculation Secrets They Don’t Want You to Know (by/via) · · , , ,
  121. Sticky Content: Focus in View (by/via) · · , , ,
  122. State of the CSS Community (by/via) · · , ,
  123. No, “AI” Will Not Fix Accessibility (by) · · ,
  124. Must Know JavaScript API—IndexedDB API (by/via) · · , , ,
  125. Testing Sites and Apps With Blind Users: A Cheat Sheet (by+/via) · · , , , , , ,
  126. Designing a Scalable Backend in Node.js (by/via) · · , ,
  127. Chrome DevTools Tips: Styles Pane and Elements Panel (by/via) · · , , , ,
  128. Best Practices for Container Queries (by) · · , ,
  129. Before Your Next Frontend Pull Request, Use This Checklist (by+/via) · · , , , , , ,
  130. Are Simple Websites Better for Business? (via) · · ,
  131. 48 Laws, Rules, and Principles of Web Development (by) · · , ,
  132. What’s New in CSS (by/via) · · , ,
  133. Tokens Are the Most Valuable Artifact a Design System Can Provide (by/via) · · ,
  134. The Ultimate Guide to Writing Technical Blog Posts (by) · · , ,
  135. Styling Scrollbars (by) · · ,
  136. RSC From Scratch: Server Components (by) · · , ,
  137. Reducing Complexity in Front End Development (by/via) · · , , ,
  138. Modern CSS in Real Life (by) · ·
  139. Exploring Universal and Cognitive-Friendly UX Design Through Pivot Tables and Grids (by/via) · · ,
  140. Be Careful With “ch” Units (by) · · ,
  141. Assume the Position—a Labelling Story (by/via) · · , ,
  142. Angular at Google I/O 2023 (by/via) · · , ,
  143. Accessible Rich Internet Applications (WAI-ARIA) 1.2 (via) · · , ,
  144. Accessibility and Artificial Intelligence (by) · · ,
  145. Primitive Objects in JavaScript: When to Use Them (via) · · ,
  146. One More Thing—Apple’s Push on Web Apps on macOS (by) · · ,
  147. Is React Having An Angular.js Moment? (by/via) · · ,
  148. An Introduction to Debugging in Node.js (by/via) · · , ,
  149. Accessibility Testing—Pay Attention to the Details (via) · · ,
  150. The Problem With Automatically Focusing the First Input and What to Do Instead (by) · · , , ,
  151. New Job? Negotiate as if Your Life Depends on It (by) · ·
  152. How to Detect Unnecessary Renderings of DOM Elements in Your Web App to Improve Performance (by) · · , , , , ,
  153. WCAG 2.2 Misses Mark on Defining Visible Focus (by) · · , , ,
  154. wasmati: You Should Write Your WebAssembly in TypeScript (by/via) · · , ,
  155. The Many Ways to Select the n-th Character From a String (by) · ·
  156. No Single Metric Captures Productivity (by) · · ,
  157. New CSS Color Spaces and Functions in All Major Engines (by/via) · · , , , ,
  158. How We Created an Accessible, Scalable Color Palette · · , , , ,
  159. How Chrome Achieved High Scores on Three Browser Benchmarks (by/via) · · , , ,
  160. How AI Can Make Software More Intuitive (by) · · ,
  161. Every Design Team Needs Writers (by/via) · · ,
  162. Do Not Drop Sass for CSS · · , ,
  163. An Introduction to “@ scope” in CSS (by) · · , , ,
  164. Why We Should Stop Using JavaScript According to Douglas Crockford (by/via) · · ,
  165. Watch Transitions in Slow Motion in Chrome’s DevTools (by) · · , , , ,
  166. The Context Dilemma (by) · · ,
  167. Some Things I Learnt From Working on Big Frontend Codebases (by) · · ,
  168. Semantic Code in HTML: What Is It and Does It Still Matter? (by) · · ,
  169. Quick Tip: Shipping Resilient CSS Components (by/via) · · , , , ,
  170. Presentational Colors (by/via) · · ,
  171. Performance Is Not a Checklist (by) · · , ,
  172. Asynchronous JavaScript for Beginners (by+/via) · ·
  173. Announcing TypeScript 5.1 (by/via) · · ,
  174. Advanced Form Control Styling With “selectmenu” and Anchoring API (by/via) · · , ,
  175. Accessible Components: The Hamburger Menu · · , ,
  176. A Practical Guide to Deploying a Complex, Production-Level, Three-Tier Architecture on AWS · · , , , ,
  177. Watch Out for Layout Shifts With “ch” Units (by/via) · · , ,
  178. Token Operations (by) · ·
  179. security.txt Now Mandatory for Dutch Government Websites · · ,
  180. Release Notes for Safari Technology Preview 171 (by/via) · · , , ,
  181. Re-Evaluating “px” vs. “em” in Media Queries (by) · · , , ,
  182. New to the Web Platform in May (by/via) · · , , , , , , , ,
  183. Linting Defensive and Logical CSS With Stylelint Plugins (by/via) · · , , , ,
  184. Is There a Viable Animated GIF Alternative Yet or What? (by/via) · · ,
  185. How Blink Invalidates Styles When “:has()” [Is] in Use (by/via) · · , , , , ,
  186. Design Systems: A Curated List for Today’s UI/UX Designers (via) · · , , ,
  187. Accessibility Audits for All (by) · · , ,
  188. S.P.A.C.E. Framework—the Ultimate Framework for Measuring Your Tech Team Productivity (by) · · , , , , , ,
  189. What Is Personalization? (via) · · ,
  190. The Art of Code Review (by/via) · · , ,
  191. I Think I Finally “Get” JS Objects (by) · · ,
  192. Hands on With the Node.js Test Runner (by/via) · · ,
  193. Cracking the Theme Switcher and Dark Mode (by/via) · · , ,
  194. Announcing the Second Compute Pressure Origin Trial (by/via) · · , , ,
  195. An Introduction to JavaScript Proxies (by/via) · · ,
  196. 21 Awesome Web Features You’re Not Using Yet (by/via) · · , , ,
  197. The Double-Edged Sword of Design Systems (via) · · ,
  198. Simple Things Make Things Simple (by) · · ,
  199. Don’t Meddle With User Input (by) · · ,
  200. 10 Incident Management Best Practices (via) · · , ,
  201. Improving the Quality of the Software With Qodana and GitHub Actions (by) · · , , , , ,
  202. The Problem With Nested Fieldsets and How to Avoid Them (by) · · , , ,
  203. The Optimization Sinkhole (by) · · ,
  204. Sass-Like Nesting in Native CSS (by) · · , , ,
  205. Mastering CSS Blend Modes (by) · · ,
  206. How Screen-Reader Users Type on and Control Mobile Devices (by/via) · · , , , , ,
  207. WordPress Turns 20 (by/via) · ·
  208. Why Does “👩🏾‍🌾” Have a Length of 7 in JavaScript? (by) · · ,
  209. When to Use Plain Text or Images Instead of MathML (via) · · , ,
  210. Understanding the Importance of Encoding (by) · ·
  211. Plain Old JavaScript and the DOM (by) · · ,
  212. We Need to Talk About How We Talk About Accessibility (by+/via) · · , ,
  213. Supper Club × Bramus Van Damme on CSS (by+/via) · · , ,
  214. How to Draw Any Regular Shape With Just One JavaScript Function (by/via) · · , ,
  215. Designing a Better Design Handoff File in Figma (by/via) · · , ,
  216. Brief Note on Popovers With Dialogs (by) · · , , , ,
  217. A Practical Overview on Architecture Decision Records (ADR) (by) · · , ,
  218. Two Things That Are Not Great About OKLCH (by) · · ,
  219. Seven Lessons From 7 Years Designing Systems (by) · · ,
  220. Levelling Up Accessibility Skills in Your Organisation (by+/via) · · ,
  221. “display: contents” Considered Harmful (by) · · ,
  222. WebKit and web-platform-tests (by) · ·
  223. The Yellow Fade Technique With Modern CSS Using “@ starting-style” (by/via) · · , ,
  224. Single Line Comments in CSS (by) · · ,
  225. Responsive CSS Layout Grids Without Media Queries (by/via) · · , ,
  226. Register Custom Properties in CSS, Get and Update Them With JavaScript (by) · · ,
  227. Reading a Voluntary Product Accessibility Template (VPAT) or Accessibility Conformance Report (ACR) (by/via) · · , ,
  228. Querying Parsed HTML in BigQuery (by) · ·
  229. Deploying AVIF for More Responsive Websites (by/via) · · , ,
  230. A Complete Guide to Using IndexedDB (via) · · , ,
  231. 11 HTML Best Practices for Login and Sign-Up Forms (by/via) · · , ,
  232. You Don’t Need a Modal Window (by) · · ,
  233. Two Simple Layouts That Work Better With Grid (by) · · , ,
  234. Introducing the “popover” API (by/via) · · , ,
  235. I Created 100+ Unique CSS Patterns (by) · · , ,
  236. Graph Slider (by) · ·
  237. Future of CSS: Popover API (by) · · , ,
  238. File Upload Security and Malware Protection (by) · · , ,
  239. Addressing Timeout Modals: Navigating the Nuances for Inclusive Web Design (by/via) · · , ,
  240. Working With URLs With Vanilla JavaScript (by) · · ,
  241. Why We’re Bad at CSS (by) · ·
  242. Visual-Design Principles and UX Design Best Practices (via) · · , , ,
  243. Stop Rewriting Your CSS! Use “:not()” Instead (by/via) · · , , ,
  244. Building a Modern Design System in Layers (by) · ·
  245. Be Careful Using “Menu” (by) · · , , ,
  246. 10 Ways to Boost Your Landing Page Conversion Rates (via) · · , ,
  247. Building Offline-First Web Applications With Service Workers and IndexedDB (by) · · , , , , ,
  248. Beyond Design Systems for Interfaces: A Mega System of Design Systems · ·
  249. A Web Component Intro With Example · · , ,
  250. Server-Sent Events With Node.js (via) · · ,