Frontend Dogma

News and Tools for Frontend Development (8)

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

  1. How to Use Node.js With Docker (by/via) · · , ,
  2. Until the Right Design Emerges… (by) · ·
  3. Using Chrome’s Accessibility Tree for Manual Testing of HTML and ARIA (by/via) · · , , , , , , , ,
  4. Evolution of Visible Focus (by/via) · · , ,
  5. 4 Web Devs, 1 App Idea (by+/via) · · , ,
  6. The Best CSS Background Patterns for Your Next Project · · ,
  7. The Developer Job Market Is Insane—5 Tips on How to Survive (by) · · , ,
  8. Is It Worth Keeping Your CSS DRY—Pros and Cons · · , ,
  9. Introducing N|Solid Copilot: Your AI-Powered Node.js Navigator (by/via) · · , ,
  10. Why Doesn’t AI Work for Producing Accessible Code? (by) · · , ,
  11. We Need to Have a Chat? I Think We Should Refactor · · , ,
  12. Shattering the Design System: Unleashing the Creative Revolution (by/via) · · , ,
  13. Introduction to LangChain (by/via) · · ,
  14. A Tip for Properly Handling Loading States in Web Apps (by) · · , ,
  15. Optimizing Frontend Performance: Mastering Memoization, Throttling, and Debouncing (by) · · , , , ,
  16. Release Notes for Safari Technology Preview 183 (by/via) · · , , ,
  17. About Subgrid and Colored Grid Lines (by) · · ,
  18. Using Selectlist in React (by/via) · · ,
  19. Browsing the Eastern Side of the Personal Web · · ,
  20. How to Optimize MongoDB Performance for Node.js (by/via) · · , , ,
  21. Modular CSS and Different Ways to Structure Your Stylesheets (by) · · ,
  22. Letter and Spirit of Web Development (by) · · ,
  23. Exploring V8’s Strings: Implementation and Optimizations (by) · · , , ,
  24. How I Test a Website for Accessibility (by) · · ,
  25. Designing for Accessibility Beyond Compliance (via) · · , ,
  26. Elevate Your CSS Debugging Skills With These Chrome DevTools Tricks in 2024 (by) · · , , , , ,
  27. Accessibility Testing With Chrome DevTools (by) · · , , , , ,
  28. Simplifying the E2E Selectors Hassle (by/via) · · , ,
  29. Cracking a “Developer Tools Killer” Script… (by) · · , ,
  30. Node.js Monthly Downloads (by) · · , ,
  31. Designing Web Design Documentation (by/via) · · , ,
  32. Prettier 3.1: New Experimental Ternaries Formatting and Angular Control Flow Syntax (by/via) · · ,
  33. Monitoring Your Python App With AppSignal (by/via) · · , ,
  34. The Top WordPress Plugins Are… a Little Sad? (by) · · ,
  35. Your Website’s URLs Can and Should Be Beautiful (by) · · ,
  36. Introducing the Website Carbon Rating System (by/via) · · ,
  37. Growing Design by Letting Teams Experience It (by) · ·
  38. A Coder Considers the Waning Days of the Craft (by/via) · · , ,
  39. Cascade Layers, CSS Functions, and More CSS With Miriam Suzanne (by+/via) · · , , , ,
  40. Text With Media Background: Practical Solutions (by/via) · · , , ,
  41. HTML Web Components (by) · · ,
  42. The Nature of Digital Is Environmentally Destructive (by) · ·
  43. HTML First (by) · · , ,
  44. Accessibility Training Can Sometimes Harm Accessibility (by) · · ,
  45. Explaining Kubernetes to My Uber Driver (by) · · ,
  46. Do You Really Need to Validate Your HTML Code? · · , ,
  47. Stop Using AI-Generated Images (by/via) · · ,
  48. AI Is the New UI (by/via) · · ,
  49. Lost in Translation: Tips for Multilingual Web Accessibility (by) · · , , ,
  50. Mastering Cryptography Fundamentals With Node’s “crypto” Module (by) · · , ,
  51. NCSA Mosaic: How the First Mainstream Web Browser Changed the World Forever · · , ,
  52. Creating Accessible UI Animations (via) · · ,
  53. CSS Nesting Is Here (by/via) · · ,
  54. Cookie Permissions 101 (by/via) · · , ,
  55. A Faster Web in 2024 (by) · · , , ,
  56. Never Use “Scroll” Value for Overflow (by) · · ,
  57. Effective Engineering Teams (by) · · , ,
  58. Modern Frontend Testing With Vitest, Storybook, and Playwright (by/via) · · , ,
  59. HTML Web Components (by) · · , ,
  60. How Long Until Your Website Is Accessible? (by) · · ,
  61. Can Bun Eat Node.js’s Lunch? Testing the Trendy Toolkit (by/via) · · , ,
  62. ES6 Features You Didn’t Know You Needed: A JavaScript Guide for Beginners (via) · · ,
  63. NaN or Not a Number? (by/via) · ·
  64. CSS Nesting Relaxed Syntax Update (by/via) · · , , , , ,
  65. Understanding HTML Landmarks and How to Apply Them (by/via) · · , , ,
  66. Front End Devs Really Don’t Understand Accessibility (by) · · ,
  67. CSS Positioning Crash Course (by/via) · · , ,
  68. Handling Null, Undefined, and Zero Values in JavaScript (by/via) · ·
  69. Using CSS “content-visibility” to Boost Your Rendering Performance (via) · · , ,
  70. Web Developers: Remarkably Untalented and Careless? (by) · · , ,
  71. Secure Code Review Tips to Defend Against Vulnerable Node.js Code (by) · · , ,
  72. Everything About SEO Is Obnoxious (by) · · , ,
  73. Monolith to Microservices: 5 Strategies, Challenges, and Solutions (by/via) · · , , , ,
  74. How to Use Timeouts in Node.js (by/via) · · , ,
  75. “@ scope” (by/via) · · , ,
  76. Introducing Angular v17 (by/via) · · ,
  77. (Don’t) Mind the Gap (by/via) · · ,
  78. Addressing Accessibility Concerns With Using Fluid Type (by/via) · · , ,
  79. Writing Components That Work in Any Frontend Framework (by) · · ,
  80. Why We Need a “Green” Perf Metric (by/via) · · , , ,
  81. React Router v6: A Beginner’s Guide (by/via) · · , ,
  82. 13 HTML Attributes You Should Know About (by) · ·
  83. Accessibility Training Will Not Save You (by) · · , , ,
  84. How Core Web Vitals Saved Users 10,000 Years of Waiting for Web Pages to Load (by+/via) · · , , ,
  85. Surprising Facts About New CSS Selectors (by/via) · · ,
  86. Headless Component: A Pattern for Composing React UIs (by/via) · · , ,
  87. Deploying a Vue Application With Netlify and GitHub (via) · · , , ,
  88. Creating Accessible Content in Drupal 10 (by/via) · · , ,
  89. Truly Semantic (by) · · , ,
  90. The Role of Prototyping in UX Design: From Wireframes to Interactive Mockups (by/via) · · , ,
  91. “git rebase”: What Can Go Wrong? (by) · ·
  92. Removing List Styles Without Affecting Semantics (by) · · , , ,
  93. How to Use npm Packages Outside of Node (via) · · , , ,
  94. Default Layouts in 11ty (by) · ·
  95. How to Build a Server-Side React App Using Vite and Express (by/via) · · , , , ,
  96. To Hell With the Business Case (by) · · , ,
  97. Understanding React Error Boundary (via) · ·
  98. image-dimensions (by) · · , ,
  99. How Creating Content as a Developer Changed My Life (by) · · ,
  100. WCAG 2.2 Will Be a Part of EN 301 549 and With That a Part of WAD and EAA (by) · · , , ,
  101. Understanding CORS (by) · · ,
  102. Messing About With CSS Gradients (by/via) · · ,
  103. An Accessibility Bookmarklet for Testing 200% Text Size (by) · · , ,
  104. Workarounds for Buggy Gradients (by) · · , ,
  105. How to Do a TypeScript Conversion (by) · · , , , , ,
  106. GitHub Copilot Now Generates AI Commit Messages (by) · · , ,
  107. Totally Remdom, or How Browsers Zoom Text (by) · · , , , ,
  108. Use the CSS “:disabled” Pseudo-Class Instead of the “[disabled]” Attribute Selector to Match Disabled Form Controls (by/via) · · , ,
  109. Why You Should Use “px” Units for Margin, Padding, and Other Spacing Techniques (by) · · , , ,
  110. Answers to Common (Web) Accessibility Questions (by) · ·
  111. In Quest to Defeat Euro Red-Tape, Apple Said It Had Three Safari Browsers—Not One (by/via) · · , , , ,
  112. Information vs. Experience: How to Build Mature Design Systems (via) · · , ,
  113. “:fullscreen” Demo Without JavaScript (by) · · ,
  114. Can AI Help Boost Accessibility? These Researchers Tested It for Themselves (via) · · , ,
  115. How to Write Good Alt Text for Screen Readers (by) · · , , , , ,
  116. How to Use the Fetch API in Node.js, Deno, and Bun (by/via) · · , , , , , ,
  117. 10 Best Web Development Stacks · · ,
  118. Don’t Turn a Table Into an ARIA Grid Just for a Clickable Row (by) · · , , ,
  119. Speeding Up the JavaScript Ecosystem—Tailwind CSS (by) · · , ,
  120. 0 KB Social Media Embeds (by) · · ,
  121. The People Who Ruined the Internet (by/via) · · , ,
  122. Learn Performance (by+/via) · · ,
  123. One HTML Tag, Thirty+ CSS Drawings—My Divtober 2023 Collection (by) · · ,
  124. Breaking Down a Design (by) · ·
  125. Confusing Git Terminology (by) · · ,
  126. The “prefers-reduced-transparency” Media Feature (by) · · , ,
  127. The Dangers of Doomscrolling for Designers and How to Break Free (via) · ·
  128. Dark Visitors (by) · · , , ,
  129. A Comprehensive Guide to Data Engineering · · ,
  130. Response Code Cheat Sheet for Laravel HTTP Client (by) · · , ,
  131. Release Notes for Safari Technology Preview 182 (by/via) · · , , ,
  132. Blinded by the Light DOM (by) · · , , ,
  133. How Bear Does Analytics With CSS · · , , ,
  134. Getting Started With NVDA (via) · · , , , , ,
  135. Personal-Scale Web Scraping for Fun and Profit · · , , ,
  136. 2023: 0 of the Global Top 100 Websites Use Valid HTML (by) · · , , ,
  137. Remix ❤️ Vite (by+/via) · · , ,
  138. Answering Common Questions About Interpreting Page Speed Reports (by/via) · · ,
  139. Accessibility by Degrees (by) · · ,
  140. Mobile-First Indexing Has Landed—Thanks for All Your Support (by/via) · · , ,
  141. Better Dynamic Themes in Tailwind With OKLCH Color Magic (by+/via) · · , , ,
  142. Why Signals Are Better Than React Hooks (by) · · , , , , ,
  143. A Complete Guide to LangChain in JavaScript (by/via) · · , , ,
  144. Effective Strategies for Optimizing Performance (by/via) · · , ,
  145. What Exactly Is “Modern” CSS? (by) · ·
  146. Interop 2023 October Update (by/via) · · , , ,
  147. 20 Effective Tips to Speed Up Your Drupal Website (by/via) · · , , ,
  148. Don’t Disable Buttons (by) · · , ,
  149. A Guide to Using MSSQL With Node.js (via) · · , , ,
  150. Unit-Testing: The Unsung Hero of Code Quality (by) · · ,
  151. Is Express Still “De Facto” for Building Node Backends? (by) · · ,
  152. The New CSS Math: “rem()” and “mod()” (by) · · , ,
  153. Let’s Reinvent the Wheel (by) · · , , , ,
  154. Why Is node_modules Heavier Than the Universe? (by) · ·
  155. View Transitions and Stacking Context: Why Does My CSS View Transition Ignore “z-index”? (by) · · , ,
  156. An Introduction to Working With SVGs in React (via) · · , , ,
  157. You’re Gonna Need a Bigger Browser (by) · · , , ,
  158. AI as a UX Assistant (by/via) · · ,
  159. How to Find a Developer Job in 2023 (With Little or No Experience) (by) · · ,
  160. So You’ve Been Publicly Accessibility-Shamed (by) · · , ,
  161. Some Sensible Defaults for Your “img” Elements (by) · · ,
  162. State of React 2023 (by/via) · · ,
  163. HTML vs. DOM? Let’s Debug Them (by/via) · · , , , ,
  164. What the !#@% Is a Passkey? (by/via) · · ,
  165. Why I Won’t Use Next.js (by) · · ,
  166. Testing and Code Quality in Node.js (by/via) · · , ,
  167. Next.js 14 (by+/via) · · ,
  168. Secret Scanning Scans Public npm Packages (via) · · , , ,
  169. 20 Simple Ways to Style the HTML “details” Element (by/via) · · ,
  170. Deprecation of Formatting Rules (by/via) · · , , , ,
  171. Introduction to htmx (via) · · ,
  172. Introduction to Real-Time Communication in PHP Laravel (by/via) · · ,
  173. Astro 3.4: Page Partials (by+/via) · · ,
  174. Performance Optimization With Worker Threads Node.js · · , , ,
  175. Arrays—Implementation in JavaScript (by) · · ,
  176. Understanding SC 2.4.11 “Focus Not Obscured (Minimum)” (by/via) · · , ,
  177. Vue.js (Vue v3) for Beginners (by/via) · · , ,
  178. Web Components Will Outlive Your JavaScript Framework (by) · · , ,
  179. What Does the “A” Mean in “DEAI”? (via) · · ,
  180. CSS “prefers-reduced-transparency” (by/via) · · , ,
  181. Data Engineering Essentials #1: Your First Pipeline (by) · ·
  182. WebKit Features in Safari 17.1 (by/via) · · , , , ,
  183. Sheet, Dialog, or Snackbar—What Should a Designer Go For? (by) · · , ,
  184. It’s 2023, Here Is Why Your Web Design Sucks (by) · · , ,
  185. Goodbye, Node.js Buffer (by) · ·
  186. My Problem With Using TypeScript in 2023 (by) · · ,
  187. A Comprehensive Guide to Django Caching (by/via) · · , ,
  188. Complex MPA View Transitions (by) · · , ,
  189. Give Your Site Some Focus! Tips for Designing Useful and Usable Focus Indicators (via) · · , , , ,
  190. Change Project, Change Node Version, Let .nvmrc Help You · · ,
  191. What Removing Object Properties Tells Us About JavaScript (by/via) · · ,
  192. Igalia Chats: Web History Part VI (by+/via) · · , , ,
  193. Release: Yarn 4.0 (by/via) · · ,
  194. Stop Waiting (by) · · ,
  195. In Defense of Learning on Company Time (by) · · ,
  196. Splitting Within Selects (by) · · , , , ,
  197. JavaScript Decorators: An In-Depth Guide (by/via) · · ,
  198. Solved by CSS Scroll-Driven Animations: Style an Element Based on the Active Scroll Direction and Scroll Speed (by/via) · · , ,
  199. Changing Colors in an SVG Element Using CSS and JavaScript (by) · · , , ,
  200. Unlocking JavaScript Design Patterns: Mastering Singleton for Ultimate Code Efficiency (by) · · , ,
  201. CSS “text-wrap: pretty” (by/via) · · , , , , ,
  202. Color Contrast Accessibility Tools With Examples (via) · · , , , , ,
  203. Svelte by Example (by) · · , ,
  204. Navigating the Ethical Complexities of Personalized User Experiences: Balancing Innovation With Privacy and Consent (via) · · , , , ,
  205. Tailwind vs. Semantic CSS (by) · · , , , , ,
  206. HTML Meta Tags · · ,
  207. Select Element: Now With Horizontal Rules (by/via) · · , , , , , , , ,
  208. JavaScript Is Enabled by Default in Web Browsers (by) · · , ,
  209. JavaScript Anti-Pattern: Self-Documenting Code (by) · · , ,
  210. Accessibility Improvements for User-Agents (by) · · ,
  211. Strikethrough Accessibility (by/via) · · , , , , ,
  212. Finding the Primary Branch of a Git Repository (by) · ·
  213. How Do You Even Web Dev Without Node? A Quick Introduction to Test-Driven Web Development Using Just the Browser (by) · · ,
  214. Is CAPTCHA Accessible? (via) · · ,
  215. Using ChatGPT for Smart Truncation in Responsive Web Design (by) · · , , ,
  216. When to Use CSS “text-wrap: balance;” vs. “text-wrap: pretty;” (by) · · , ,
  217. Using ChatGPT, GitHub Copilot, and Phind to Generate Tailwind Config for Width Classes (by) · · , , ,
  218. What Should Be the Contrast Level of Inactive Buttons? (via) · · , , ,
  219. Embedding Accessibility Into Code Reviews (via) · · , , ,
  220. Web Accessibility Strategies for Non-Accessible Projects (by/via) · · , , ,
  221. Prodding Firefox to Update “:has()” Selection (by) · · , , , ,
  222. How to Collaborate on Pull Requests for Beginners (by/via) · · , ,
  223. The Need for Recognition in Open Source (by/via) · · , , ,
  224. Don’t Do It on Frontend or… Frontend Good Practices for Devs (by) · · , , ,
  225. I Asked People to Make This Simple Layout and Was Surprised by the Results (by) · · , , ,
  226. Why Unique ID Attributes Matter (via) · · , ,
  227. How to Map a Number Between Two Ranges (by) · · , ,
  228. Storybook 7.5 (by/via) · · ,
  229. Do We Need State Management in Angular? · · ,
  230. The Inverse Value of UX and Art (via) · · ,
  231. Does the HTML “hr” (Horizontal Rule) Benefit Screen Reader Users? (by/via) · · , , , ,
  232. On the Uniting Power of a Commitment to HTML Conformance (by) · · , , , ,
  233. The New “light-dark()” Function to Switch Theme Color in CSS (by) · · , ,
  234. How to Animate Along a Path in CSS (by/via) · · , ,
  235. Release Notes for Safari Technology Preview 181 (by/via) · · , , ,
  236. Solid.js Creator Outlines Options to Reduce JavaScript Code (by/via) · · ,
  237. How to Use SEO to Build Long-Term Brand Recognition and Visibility (by/via) · · , ,
  238. Burn Your Toast (by) · · , ,
  239. A Couple of New CSS Functions I’d Never Heard Of (by) · · ,
  240. Transition Animations: A Practical Guide (by) · · , , ,
  241. React Design Patterns (by/via) · · ,
  242. The Nuances of Base64 Encoding Strings in JavaScript (by) · · ,
  243. Node.js 21 Available Now! (via) · · ,
  244. Design System Documentation Sucks—How We Can Do Better (by) · · ,
  245. Synchronizing Figma Variables With Design Tokens (by) · · , ,
  246. The Three Cs: Concatenate, Compress, Cache (by) · · , ,
  247. Start Styling Your “console.log()” Messages in DevTools (by/via) · · , , , ,
  248. Common Vue.js Development Mistakes and How to Avoid Them (by) · · ,
  249. 2.4.11: Adversarial Conformance (by) · · , ,
  250. Ensuring Negative Numbers Are Available for Everyone (by+/via) · · , ,