Frontend Dogma

News and Tools for Frontend Development (14)

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

  1. DevTools: Tricks for Copying the Styling From Any Website (by) · · , , , ,
  2. It’s About Time CAPTCHAs Become Accessible (via) · · ,
  3. Accessibility Beyond Code Compliance (by) · · ,
  4. Accessibility and Design Systems: The Deep-Dive Q&A (by+/via) · · , ,
  5. DevTools: Faster Searching in DevTools With CSS Selectors (by) · · , , , , ,
  6. Internationalization in Next.js 13 With React Server Components (by/via) · · , , ,
  7. Tracking the Fake GitHub Star Black Market With Dagster, dbt, and BigQuery (by+/via) · · , ,
  8. Versioning Design Tokens (by) · · , ,
  9. Scraping Single-Page Applications With Playwright (via) · · , ,
  10. The Ultimate Guide to Micro-Content (by/via) · · , ,
  11. JavaScript Polyfills (by) · · ,
  12. JavaScript for Beginners: Data Structures · · , ,
  13. Git Fundamentals, a Complete Guide (by) · · , ,
  14. The H1 Conundrum: Understanding the Challenges of Heading Level One (by/via) · · , , ,
  15. Cool Frontend Arts of Local-First: Storage, Sync, Conflicts (by+/via) · · , ,
  16. 6 CSS Snippets Every Front-End Developer Should Know in 2023 (by/via) · ·
  17. Future CSS: Anchor Positioning (by) · · , ,
  18. Modern Font Stacks (by) · · , ,
  19. What Leonardo Da Vinci Can Teach Us About Web Design (by/via) · · ,
  20. JavaScript: Automatically Remove an Event Listener After It Has Executed (by) · · ,
  21. Fix Color Contrast—Web Accessibility for Text and UI Design (by) · · , ,
  22. Circling Back on Design and Everything Else (via) · ·
  23. How Design Is Governance (by/via) · ·
  24. Progressively Enhancing a Table With a Web Component (by) · · , , , ,
  25. Accepting Design (by+/via) · ·
  26. Useful Tips and Tricks for Laravel (via) · · ,
  27. TCP Echo Server for Node.js · · , ,
  28. Advice From a Software Engineer With 8 Years of Experience (by) · ·
  29. Best Practices for Structuring Accessibility Testing (by/via) · · , ,
  30. Why Aren’t Logical Properties Taking Over Everything? (by) · · , ,
  31. Making Calendars With Accessibility and Internationalization in Mind (by/via) · · , ,
  32. The Ternary Operator in JavaScript (by) · · ,
  33. What Is the Cost of Designing a Mobile App? (via) · · ,
  34. Introduction to Offline First Web Applications (by/via) · · , ,
  35. 8 Tips for Making Your Custom Web Designs Mobile Friendly (via) · · , ,
  36. We Don’t Need “.visually-hidden” (by/via) · · , , ,
  37. Create and Download Text Files Using JavaScript (by) · ·
  38. UX Strategy: Study Guide (by+/via) · · , , , ,
  39. “content” Is Your Content? (by/via) · · , , , ,
  40. From UX to Growth Design: 5 Principles to Multiply Your Value (by/via) · · , ,
  41. View Transitions API: Creating Smooth Page Transitions (via) · · ,
  42. Handling CSS Color Fonts With “font-palette” (via) · · , ,
  43. The Ultimate Guide to Becoming a 10× Dev (by) · · , ,
  44. “Design First, Then Build”: Let’s Bury This Myth Forevermore (by/via) · · , ,
  45. TypeScript’s Migration to Modules (by+/via) · · , ,
  46. Building Complex Forms in Vue (by/via) · · ,
  47. One Problem That Is Now Solved by CSS Subgrid (by) · · ,
  48. Evolving Custom Sliders (by/via) · · ,
  49. Vue vs. React: Everything You Need to Know (via) · · , ,
  50. SPA View Transitions Land in Chrome 111 (by/via) · · , , , , ,
  51. Selecting Previous Siblings With CSS “:has()” (by) · · ,
  52. Web Cookies With a Taste of Privacy (by/via) · · , ,
  53. Craft vs. Industry: Separating Concerns (by) · · , , , ,
  54. File Uploads for the Web: Uploading Files With HTML (by) · · ,
  55. Cover All the Codebases: A Guide to Code Coverage Tools (via) · · , , , ,
  56. All JavaScript and TypeScript Features From the Last 3 Years (via) · · , ,
  57. Static Site Generators: What’s Trending Right Now (via) · · , , , , , , ,
  58. I No Longer Understand “prefers-contrast” (by) · · ,
  59. My Ideal Accessible Components Resource Is Holistic, Well Tested and Easy to Use (by) · · ,
  60. ChatGPT and Me (a Recruiter) (via) · · , ,
  61. How to Fix: Child Stylesheet Loading Twice (WordPress) (via) · · , ,
  62. Creating a Clock With the New CSS “sin()” and “cos()” Trigonometry Functions (by/via) · · ,
  63. CSS Nesting (by/via) · · ,
  64. Tackling Design Debt in Product (by/via) · · , ,
  65. An End to Typographic Widows on the Web (by) · · ,
  66. Change Favicon on Switching Browser Tabs in JavaScript (by) · · , ,
  67. As a User, I Don’t Want To (by/via) · · , ,
  68. Zebra Stripe Lines of Text Even When They Wrap (by) · ·
  69. 2023 Web Framework Performance Report (by/via) · · , , , , , , , , ,
  70. Quick Tip: How to Cache Data in PHP (via) · · , , ,
  71. What Value Does Developer Relations Bring to Other Teams? (by) · · ,
  72. A Tab Interface Before Its Time (by) · · ,
  73. Managing Fonts in WordPress Block Themes (via) · · ,
  74. The AI Future of Frontend Development (by) · · ,
  75. HTML Garden (by) · · , ,
  76. Best Practices for Future-Proofing Your Flutter Apps in 2023 and Beyond (by/via) · · ,
  77. ARIA Live Regions for JavaScript Frameworks (by/via) · · , , , ,
  78. The Anatomy of a Good Design: An Analysis of 4 Sites (by/via) · ·
  79. Balanced Text Wrapping Is Coming to CSS (by) · · ,
  80. 10 Helpful JavaScript Utility Functions (by) · · ,
  81. 50.1% Empty Links (by) · · , , , ,
  82. Continuous Growth Is Cancer (by) · · ,
  83. The Cost of Architectural Complexity (by) · · , ,
  84. Making the Case for Signals in JavaScript (by/via) · · ,
  85. AI-Generated Git Commit Messages (by) · · , ,
  86. Optimising Large Contentful Paint (by/via) · · , , ,
  87. The Art of Unlearning (by/via) · · ,
  88. Everything You Need to Know About the Gap After the List Marker (by/via) · ·
  89. Toolkit Tuesday: Using YouTube for Captions and Transcripts (via) · · , , ,
  90. Are You Making These Five Mistakes When Writing Alt Text? (by/via) · · , , ,
  91. Signals in Angular: The Future of Change Detection (by) · · ,
  92. Moving From Vue 1 to Vue 2 to Vue 3: A Case Study of Migrating a Headless CMS System (by/via) · · , , , ,
  93. Announcing TypeScript 5.0 RC (by/via) · · ,
  94. A Beginner’s Guide to Manual Accessibility Testing (via) · · , ,
  95. The Web Needs a Native “.visually-hidden” (by) · · ,
  96. You Don’t Need a Build Step (by/via) · · , ,
  97. Declarative Design (by/via) · · ,
  98. Accessible but Never Boring: Rebranding the Wise Design System for Everyone (by/via) · · , ,
  99. Unlocking SVG’s Superpowers (by/via) · · ,
  100. The WebAIM Strategic Accessibility Framework (via) · · ,
  101. A Native “Visually Hidden” in CSS? Yes Please! (by/via) · · , , , ,
  102. How We Built Our Multi-Platform Design System at Booking.com (by/via) · · , , ,
  103. React vs. Signals: 10 Years Later (by/via) · · , , , ,
  104. Throttle Your CPU (by/via) · · , , ,
  105. Relative Rounded Corners (by/via) · · ,
  106. Learn How to Set Up a CI/CD Pipeline From Scratch (by) · · ,
  107. The Seven Archetypes of Organizational Topologies (by+/via) · · ,
  108. Conformance and Accessibility (by) · · , ,
  109. Animated Gradient Text in CSS (by) · · , ,
  110. Are You Testing to Test, or Testing to Prove? (via) · · ,
  111. What Is “ref()” in Vue? (by) · ·
  112. Without Accessibility, There Is No Privacy or Security (via) · · , ,
  113. How People Read Online (by/via) · · , , ,
  114. Ten Tips for Better CSS Transitions and Animations (by) · · , , ,
  115. Quick Tip: How to Handle Exceptions in PHP (via) · · , , ,
  116. Could We Make the Web More Immersive Using a Simple Optical Illusion? (via) · · , ,
  117. A Guide to Accessible Form Validation (by/via) · · , , , ,
  118. A Guide to CSS “object-view-box” (via) · · ,
  119. The Ultimate Guide to Web Development Tools (via) · · , ,
  120. Simplified Dark Mode With Style Queries (by) · · , ,
  121. The Evolution of Signals in JavaScript (by/via) · · ,
  122. On Container Queries, Responsive Images, and JPEG-XL (by/via) · · , , , ,
  123. The Coolest JavaScript Features From the Last 5 Years (by) · · ,
  124. Designers, Use Your intuition (via) · · ,
  125. Conveniently Toggle and Add Tailwind CSS Classes in Chrome DevTools (by) · · , , , , , ,
  126. Dithering Images With React/JavaScript (by) · · , , ,
  127. 22 Useful CSS Tips and Tricks Every Developer Should Know · · ,
  128. Is It Time to Replace Sass? (by) · · ,
  129. CSS Animation Libraries: 10 Popular Choices (via) · · , , ,
  130. Crawl Weather Using Cypress (by) · · ,
  131. Learn CSS Positioning (by) · · ,
  132. Step-by-Step Guide: Creating a Template for Vue 3, Vuetify 3, and Storybook · · , ,
  133. Debugging JavaScript Like a Pro: Tools and Techniques for Finding and Fixing Bugs (by) · · , , ,
  134. How to Style Your Alt Text (by) · · , , ,
  135. How to Contribute to a Project You Have No Idea About (by) · · , , ,
  136. Prepare for Chrome’s User Agent [String] Reduction (by/via) · · , , , ,
  137. 3 Common Antipersonas in UX (via) · · , ,
  138. In-Depth Guide to CSS Logical Properties (by/via) · · , , ,
  139. The JavaScript Site Generator Review, 2023 (by) · · , , , , , , , , ,
  140. You Have the Users You Have (via) · · , ,
  141. Getting Started With Style Queries (by/via) · · , ,
  142. Privacy Principles (by+/via) · · ,
  143. Node.js Toolbox (by) · · , ,
  144. Successful Teams Ensure 100% of Their Members Understand Keyboard Accessibility (via) · ·
  145. Experiments With the JavaScript Garbage Collector (by/via) · · ,
  146. 7 Essential React Libraries for Front-End Web Development (by) · · , ,
  147. All About Promises in JavaScript (by) · · ,
  148. 16 Best CSS Books for Beginners and Advanced Coders (via) · · , ,
  149. Learn Privacy (by/via) · · ,
  150. Where Does Developer Relations Belong in an Organization? (by) · · ,
  151. The State of Node.js Core (by/via) · · ,
  152. Automatic Captions: Our Experiments and Best Practices (via) · · , , ,
  153. What Framework Should I Use? (by) · ·
  154. Open Captions vs. Closed Captions: What’s the Difference? (via) · · , ,
  155. The Great Gaslighting of the JavaScript Era (by) · · , ,
  156. The Importance of Adding Accessibility Design Reviews to the Design Process (by/via) · · , ,
  157. When JavaScript Fails (by) · ·
  158. Understanding Easing and Cubic Bézier Curves in CSS (by) · · , ,
  159. The Page With No Code (by) · · , ,
  160. Thoughts on Dev Rel in the Post-Twitter Era (by) · · , ,
  161. How to Handle Date and Time With JavaScript (via) · · ,
  162. How Shadow DOM and Accessibility Are in Conflict (by/via) · · , ,
  163. Understanding the Difference Between Props and State in React · · , , ,
  164. “(255,255,255)” Is the Highest Specificity (by/via) · · ,
  165. 5 Super Useful CSS Properties That Don’t Get Enough Attention (by) · · ,
  166. ARIA vs. HTML (by) · · , , , ,
  167. Ethical Alternatives to Revenue-Generating Deceptive Patterns (via) · · , , ,
  168. “Make It Easier” Is Not a Product Strategy (by/via) · · , ,
  169. Design Systems in the Time of AI (by) · · ,
  170. Not Everyone Uses a Computer in the Same Way That You Do (by/via) · · ,
  171. Use the Child-Element Count in CSS (by) · · ,
  172. Surviving Design Systems (by/via) · ·
  173. The State of JS Frameworks (by+/via) · · , ,
  174. Understanding the Cost of Not Being Accessible (by) · · ,
  175. Updating a Design System (via) · · ,
  176. Style File Selector Button Using CSS (by) · · ,
  177. Quick Tip: How to Trim Whitespace With PHP (via) · · , ,
  178. React Libraries for 2023 (by) · · , ,
  179. Learn All About Node.js Worker Threads With Examples (via) · · , ,
  180. All About Iterative Design (by/via) · · ,
  181. Arranging Diamond Tiles in a Grid (by) · · ,
  182. Last Baseline Alignment (by/via) · · , , ,
  183. Avoid Spanning Table Headers (by) · · , , ,
  184. Using Focal Points, Aspect Ratio, and Object-Fit to Crop Images Correctly (by) · · ,
  185. Ideas for Making Accessibility and Equity a Core Part of the Software Development Lifecycle (by) · · , ,
  186. Keys to an Accessibility Mindset (by/via) · · ,
  187. Create a Rainbow-Coloured List With “:nth-of-type()” (by) · · , ,
  188. How to Password-Protect a Static HTML Page With No JS (by) · · , , ,
  189. Do We Need CSS “flex-wrap” Detection? (by) · · ,
  190. The Spirit of CSS-Tricks Is Now Gone (by) · · ,
  191. My CSS Wishlist 2023 (by) · · ,
  192. Representation of Style (by) · · ,
  193. To Sketch or Not to Sketch? (via) · · ,
  194. Don’t Use 403s or 404s for Rate Limiting (by/via) · · ,
  195. Declarative Shadow DOM (by+/via) · · , ,
  196. Software Accessibility for Users With Attention Deficit Disorder (ADHD) (via) · ·
  197. If You’re Going to Do a Job, Do It Properly (by) · · ,
  198. A Step-by-Step Guide to Building Accessible Carousels (by/via) · · , , , ,
  199. How to Build Offline Web Applications (by) · · , ,
  200. Unlocking the Power of Design to Help Users Make Smart Decisions (via) · · ,
  201. Using Node Watch Instead of Nodemon (by) · · ,
  202. Resizing With CSS (by/via) · · ,
  203. ChatGPT Can Write Good CSS? (by/via) · · , ,
  204. The Return to the Office Could Be the Real Reason for the Slump in Productivity (by/via) · ·
  205. Writing JavaScript Without a Build System (by) · · ,
  206. Scaling Accessibility Through Design Systems (by+/via) · · , , ,
  207. Building an Animated SVG Logo With animejs (by/via) · · , ,
  208. Screen Readers Don’t Convey the Semantics of “strong” and “em” (by) · · , , , , ,
  209. Igalia Chats/Shop Talk Crossover: Ecosystem Health Part IX (by+/via) · · , , ,
  210. How to Use View Transitions in Hotwire Turbo (by/via) · · , ,
  211. Buttons, Links, and Focus (by) · · , , , ,
  212. My 2023 CSS Wishlist (by) · · ,
  213. What to Expect From Vue in 2023 and How It Differs From React (by/via) · · , ,
  214. Is It Worth Learning JavaScript? Popularity, Salaries, and Future (via) · · ,
  215. Some of the Future Is Now for CSS: A Postscript (by) · ·
  216. How the Web Works: Understanding the Architecture of the Web (by) · · , ,
  217. A Practical Approach to Automated Accessibility (by) · · , ,
  218. Angular Reactivity With Signals (by/via) · · , ,
  219. IT Incident Management (by/via) · ·
  220. The User Activation API (by/via) · · ,
  221. Automation Is Not the Enemy (by) · · , ,
  222. Well-Known Symbols (by) · ·
  223. Container Queries Land in Stable Browsers (by/via) · · , , ,
  224. My CSS Wish List (by) · · ,
  225. The Modern Web’s Underrated Powerhouse (by/via) · ·
  226. CSS Grid Gap Behavior With Hidden Elements (by) · · ,
  227. Is It Time to Go Back to the Monolith? (by) · ·
  228. How to Inspect Interactions in the Browser (by/via) · · , , ,
  229. Mastodon and Open Graph (by) · · , , , ,
  230. Quick Tip: How to Hash a Password in PHP (via) · · , , , ,
  231. The (Extremely) Loud Minority (by) · · ,
  232. Using Playwright to Monitor Third-Party Resources That Could Impact User Experience (by/via) · · ,
  233. Change Tab Bar Color Dynamically Using JavaScript (by) · · , , ,
  234. So, What’s Next [for core-js]? (by) · · , , ,
  235. Git: How to Skip Hooks (by) · · ,
  236. An Approach to Lazy Loading Custom Elements (via) · · , ,
  237. Declarative Shadow DOM (by/via) · · ,
  238. This Is Why Performance Matters (by) · · , ,
  239. Sandboxing JavaScript Code (by) · · ,
  240. Rethinking the Modern Web (by) · · , ,
  241. Technical Writing Process: How to Write a Good Technical Article (by) · · , ,
  242. MathML in Chrome · · , , , ,
  243. My CSS Wishlist (by) · · ,
  244. A Comparison of SUS, UMUX-LITE, and UEQ-S (via) · · , , ,
  245. Automated Testing Won’t Solve Web Accessibility (by) · · , ,
  246. A Minimal, Multi-Framework, Responsive Image Component (by) · · , ,
  247. Why Developers Should Learn Docker and Kubernetes in 2023 (by) · · ,
  248. Technical SEO Basics for React Developers (by) · · , ,
  249. Why I’m Not the Biggest Fan of Single Page Applications (by) · ·
  250. Discovering Primitive Objects in JavaScript (via) · · ,