Frontend Dogma

News and Tools for Frontend Developers (20)

→ Stay up-to-date on all topics by RSS feed, on Mastodon and Bluesky, or through other channels

Entry (Sources) and TopicsDate#
How I Approach and Structure Enterprise Frontend Applications After 4 Years of Using Next.js (jos)9,974
, ,
Bun, JavaScript, and TCO (ons)9,973
, ,
Running a Playwright Script on AWS Lambda (mat)9,972
, , ,
The Dangers of Deceptive Design Patterns (and How to Avoid Them) (web)9,971
,
Bun 1.0 (jar+/bun)9,970
,
A New Method to Validate URLs in JavaScript (ste)9,969
, ,
JavaScript WTF: Why Does “every()” Return “true” for Empty Arrays? (nza)9,968
Building a Real-Time Chat With WebSockets, Novel, and Clerk (nev/nov)9,967
, , , , ,
WOFF Has Left the Building (mat)9,966
, , , ,
Why Are We Not Still Using Tables-for-Layout? (rac)9,965
, ,
Web Components Accessibility FAQ (mat)9,964
,
The “Array.prototype.every()” Method Always Returns “true” for an Empty Array (cfe)9,963
, ,
From Data-Driven to Decision-Driven (kyl/uxd)9,962
, ,
Delay, Sleep, Pause, and Wait in JavaScript (jch/sit)9,961
CSS “display” Is a Multi-Keyword Property? (zor/css)9,960
,
CSS Lobotomized Owl Selector: A Modern Guide (dop/log)9,959
, , ,
Gulp vs. Webpack—What Is Better: Using Webpack or Gulp.js? (ine)9,958
, ,
The New Google Fonts: Find What You’re Looking For (tob/mat)9,957
,
Using Labeled Loops in JavaScript (ben)9,956
Binary Search Algorithm in JavaScript (fro)9,955
, ,
Turbo 8 Is Dropping TypeScript (dhh/37s)9,954
, ,
Release Notes for Safari Technology Preview 178 (jon/web)9,953
, , ,
Making Sense of React Server Components (jos)9,952
,
Long Live the Test Pyramid (lei/sma)9,951
, ,
Is AI the Silver Bullet of Accessibility? (wec)9,950
,
GoDaddy Retires Media Temple Brand (sar/wpt)9,949
,
Four Common Types of Code Coverage (lei+/dev)9,948
,
Node.js vs. Deno vs. Bun: JavaScript Runtime Comparison (sny)9,947
, , , , ,
Browser Video Players Review (aar)9,946
, , , , ,
The Perpetual Circle of Accessibility (tod)9,945
,
Node.js Includes Built-In Support for .env Files (phi)9,944
, ,
“Good Commit” vs. “Your Commit”: How to Write a Perfect Git Commit Message (vic/git)9,943
, , , ,
Essential Metrics for Click Testing (jef/mea)9,942
, ,
Equivalent Experience Can Cut Both Ways (eri)9,941
,
Compact HTML (dev)9,940
8 Micro Tips for Remarkably Better Typography (mat/uxd)9,939
, ,
First, Do No Harm: Mistakes to Avoid in Creating Accessible User Experiences (18f)9,938
, ,
Progressively Enhanced Form Validation: Custom Validation Messages (ger/clo)9,937
, , ,
Understanding SSR, CSR, ISR, and SSG: A Comprehensive Guide (dji)9,936
, , ,
Web Components Don’t Need You (chr/cod)9,935
Node v20.6.0 (soy/nod)9,934
,
NODE_ENV Considered Harmful (cji)9,933
,
CSS Frameworks Comparison: Bootstrap vs. Foundation vs. Materialize (biz)9,932
, , , , ,
10 Things You Didn’t Know About HTML9,931
Top Website Redesign Tips for 2023 (b12)9,930
,
Style Is Consistent Constraint (kep)9,929
,
On Productivity Metrics and Management Consultants (nor)9,928
,
A Wide View of Automated Testing in React Apps (eri)9,927
, ,
Information Architecture vs. Sitemaps: What’s the Difference? (sam/nng)9,926
, ,
Why I Switched From Sublime Text to Visual Studio Code9,925
, , ,
Three Dimensions of Developer Productivity (abi)9,924
, , ,
Small Details to Improve Your Website’s Experience (alv)9,923
, , ,
Selecting the Scoping Root (mat)9,922
,
Type Safe CSS Design Systems With “@ property” (arg)9,921
, ,
Dialog Dilemmas and Modal Mischief: A Deep Dive Into Popovers and How to Build Them (hdv)9,920
, , , ,
A Beginner’s Guide to Eleventy (dza)9,919
,
JetBrains Qodana Review (dev)9,918
,
Clocks and Countdowns: Timing in CSS and JavaScript (mad)9,917
,
Decoding WCAG: “Alternative for Time-Based Media” and “Media Alternative for Text” (jon/web)9,916
, ,
Things That Jakob’s Law Is Not (bri)9,915
, ,
Is Atomic Design Dead? (bra/fro)9,914
, ,
How to Make Charts and Graphs More Accessible (pop)9,913
, , ,
An Introduction to the Laravel PHP Framework (cla/sit)9,912
, , ,
The Role of Cloud Computing in Web Development (iro)9,911
Understanding Feature Flags: Improving Feature Management (pri/clo)9,910
, ,
Build a GraphQL Gateway: Combine, Stitch, or Merge Any Datasource (gra/sit)9,909
,
What Is the View Transitions API and How to Use It With Meta Frameworks (moj/bej)9,908
, , ,
Let’s Make a Rubber Button With HTML, CSS, and SVG (tyl/clo)9,907
, , , ,
Why Do I Have Layout Shift? (una+/dev)9,906
, ,
What Is Inclusion Anyways? Lessons From the Disabled Community9,905
, , ,
Web Sustainability Guidelines (WSG) 1.0 (ale+/w3c)9,904
,
Using “rem” Doesn’t Make Your Website Responsive—Here’s Why9,903
, ,
Tracking Errors in a Node.js Application (ris/app)9,902
, ,
Memorization and Learning to Code (byc/the)9,901
, , ,
CSS Loaders (css)9,900
, , ,
Connected Grid Layout Animation (crn/cod)9,899
, , ,
Astro 3.0 (mat+/ast)9,898
,
Accessibility Theater (tpg)9,897
Guide to Using Template Engines (Such as Twig) With PHP9,896
, , ,
Getting Started With htmx: A Comprehensive Guide for Beginners (7do)9,895
, ,
Sustainable SEO: Processes and Practices (mig)9,894
, , ,
Case Study: Rebuilding TechCrunch Layout With Modern CSS (sha)9,893
, ,
How to Implement SSL/TLS Pinning in Node.js (sny)9,892
, , , ,
Why Are Websites Embarrassing? (fon)9,891
,
Web Apps Are Better Than No Apps (yur)9,890
Measuring Developer Productivity? A Response to McKinsey (ger+)9,889
,
Hover Triangles (may)9,888
,
Git Uncommit (ami)9,887
,
Five Optimization and Performance Tools That Enhance Website User Experience (min)9,886
, , , ,
Building Accessibility Into Your Company, Team, and Culture (som/swi)9,885
, ,
Benchmarks [for 24 CSV Parsing Approaches] (lee)9,884
, , ,
Announcing Cypress 13 With Test Replay (cyp)9,883
,
Biome v1 (ema/bio)9,882
,
How I Write Alt Text for Code Snippets on Social Media (ben)9,881
, , , ,
From User Needs to User Dreams: Find the Future of Your Product (arp/uxd)9,880
, ,
Six Reasons Not to Use React (jhe)9,879
,
Realistic CSS Animations and the “linear()” Timing Function (kir)9,878
, ,
An Overview of Feature Flags (log)9,877
, , , ,
8 Habits That Hold Back Your Developer Potential (tho)9,876
,
Single-Page Applications: Ember vs. Angular (sel)9,875
, , ,
Code Splitting in React: Optimize Performance by Splitting Your Code (shr)9,874
, , ,
Navigating Web Accessibility Litigation: Advice From a General Counsel (lev)9,873
,
Falling for OKLCH: A Love Story of Color Spaces, Gamuts, and CSS (geo/sma)9,872
, ,
Package-Based Architecture—Let’s Deliver the Packages (abh/goo)9,871
, ,
Co-Authoring Git Commits (cas)9,870
, ,
Accessible Navigation (emm)9,869
,
State of CSS 2023 [Results] (sac+/dev)9,868
,
Biases in Design: Hiding in Plain Sight in a World Full of Visuals (uxd)9,867
Web UX: Study Guide (nng)9,866
, , ,
Dark Mode: How Users Think About It and Issues to Avoid (tbk/nng)9,865
, , ,
Visualizing Recursion With the Sierpinski Triangle (kir)9,864
, ,
Browser Automation With Puppeteer (sev)9,863
, ,
Introducing the 100-Year Plan: Secure Your Online Legacy for a Century (pho/wor)9,862
, , ,
Where to Put Focus When Deleting a Thing (aar)9,861
,
Scope vs. Shadow DOM (kei)9,860
, , , , ,
Catching Errors Thrown From “connectedCallback” (nol)9,859
, ,
WTF Is a Vector Database: A Beginner’s Guide (pav)9,858
,
What Is Alt Text and How to Write It (tpg)9,857
, , ,
TypeScript 5.3 First Look (mat)9,856
Stakeholder Management for Design Systems (luk/uxd)9,855
, ,
Main-ly Speaking (tod)9,854
,
European Accessibility Act: Article 32, and Why It Sucks (cra)9,853
, ,
Announcing TypeScript 5.2 (dro/typ)9,852
,
A More Intelligent and Secure Web (ple/w3c)9,851
, , , , ,
What Are Exceptions to Section 508 Accessibility Requirements? (boi)9,850
, ,
Use Web Components for What They’re Good At (nol)9,849
To Test or Not to Test, a Technical Perspective (lei/dev)9,848
, ,
The Art of UX Writing (web)9,847
, ,
Pros and Cons of Using Shadow DOM and Style Encapsulation (mat)9,846
, ,
How to Get 12% More LinkedIn Followers, Impressions, and Clicks—Practical Accessibility Tips and Tricks (at/mni)9,845
, , , ,
How Organisations Respond to Accessibility Monitoring (gov)9,844
,
Google August 2023 Broad Core Update Is Live—What We Are Seeing Now (rus/ser)9,843
,
Block the Bots That Feed “AI” Models by Scraping Your Website (cla)9,842
, ,
A Few Interesting Ways to Use CSS Shadows for More Than Depth (rps/sma)9,841
, ,
View Transitions Break Incremental Rendering (eee)9,840
, ,
WebGlossary.info (j9t)9,839
, , , ,
Release Notes for Safari Technology Preview 177 (jon/web)9,838
, , ,
No One Actually Wants Simplicity (spo)9,837
,
Debugging Speculation Rules (tun/dev)9,836
, ,
A Guide to Migrating From Webpack to Vite (jch/sit)9,835
, , ,
A Quick Introduction to CSS “@ scope” (bra/bra)9,834
, , ,
Migrating From Color Styles to Local Variables in Figma (uxd)9,833
, , ,
Writing Component Specs (eis)9,832
, ,
Two Important New Roles for UX Designers in the Era of AI (uxm)9,831
, , ,
The Ideal Viewport Doesn’t Exist (lea+/set)9,830
, ,
Please Size Your Inline SVGs (aar)9,829
,
Patterns for Reactivity With Modern Vanilla JavaScript (1ma/fro)9,828
,
Changes Over the Last 25 Years of UX Research (ano/uxm)9,827
, ,
Can We Truly “Create” Value? (ian/uxd)9,826
,
Bézier Curves (ekw+)9,825
All 12 “useState” and “useEffect” Mistakes Junior React Developers Still Make in 2024 (byt)9,824
, ,
Progressively Enhanced Form Validation: Validating a Checkbox Group (ger/clo)9,823
, ,
“We’re All Just Temporarily Abled” (jim)9,822
How to Make an Impact as a Developer Advocate (bla)9,821
, , ,
7 Reasons to Replace Advanced Search With Filters So Users Can Easily Find What They Need (ada)9,820
, , ,
10 Essential VS Code Tips and Tricks for Greater Productivity (cod)9,819
, , , ,
The Definitive Guide to Web Personalization: Strategies, Tools, and More to Know (alg)9,818
, ,
Why htmx Does Not Have a Build Step (goo/htm)9,817
,
Styling Links and Buttons (aar)9,816
, , ,
Let’s Build a Website Using XML (ede)9,815
,
Getting Started With SCSS—the CSS Preprocessor With Superpowers9,814
, ,
Combining “:placeholder-shown” and “:has” (cri)9,813
, ,
Scroll Shadows With “animation-timeline” (dav)9,812
, ,
React JSX (sta)9,811
,
Identifying, Fixing, and Preventing Cannibalization (jon/moz)9,810
How to Use Headless Chrome in Serverless Functions With a 50 MB Limit (ste)9,809
, , , , , ,
Being “Polite” Does Not Ensure Access (dre)9,808
,
Adding a “Share to Mastodon” Link to Any Web Site (cod)9,807
, , , ,
A Beginner’s Guide to Using Pico CSS (dav/muo)9,806
,
React Props: A Visual Guide9,805
, ,
Demystifying CORS: Understanding How Cross-Origin Resource Sharing Works9,804
, ,
“aria-haspopup” and Screen Readers (mat)9,803
, ,
XUL and HTML (tim/moz)9,802
, ,
Why Do Users Prefer Certain Design? Insights From the Landscape Theory (cre)9,801
Tabs Are Objectively Better Than Spaces (cfe)9,800
, ,
How to Use the CSS “gap” Property (ral/sit)9,799
, ,
A Deep Dive Into CSS “color-mix()” (kev)9,798
, , ,
The New CSS Math: “round()” (dan)9,797
,
Towards HTTPS by Default (jde/dev)9,796
, , , , ,
Thinking on Ways to Solve Adaptive Typography (arg/dev)9,795
, , ,
Getting Started in a New Codebase (abb)9,794
, ,
Four New CSS Features for Smooth Entry and Exit Animations (una+/dev)9,793
, , , , ,
CSS-Only Syntax Highlighting… With a Single Element and Gradients (gra)9,792
, ,
BEM Methodology Is Not About CSS (vit)9,791
, ,
Accessibility Is Not Inclusive Design or Disability Rights—It’s a Part of It (yat)9,790
, ,
A Better “setTimeout()” in JavaScript (ami)9,789
New in Chrome 116: Document Picture-in-Picture API, “notRestoredReasons” Property, and More (tro/dev)9,788
, , , ,
How Layout Position Impacts Three Big Web Performance Levers (sia/sho)9,787
,
An Intro to the “dialog” Element (cfe)9,786
, , ,
A Guide to Optimizing JavaScript Files (bib/sit)9,785
, , , , ,
A Beginner’s Guide to SvelteKit (kue/sit)9,784
,
CSS Selectors: A Visual Guide (fff)9,783
, ,
Useable (rlb)9,782
,
How to Test Mobile Apps on a Real Device Cloud (sit)9,781
, ,
Progressively Enhanced Form Validation: Layering in JavaScript (ger/clo)9,780
, , ,
WebAssembly: Byte-Code of the Future (jos)9,779
Enhance vs. Lit vs. WebC… or, How to Server-Render a Web Component (jar/van)9,778
, , ,
An “alt” Decision Tree Using Only “:has()” (aar)9,777
, , ,
Why Inclusive Language Matters in Coding (elv/uxd)9,776
, , ,
Unveiling the Power of Code-Splitting With Webpack for React and Redux Applications9,775
, , ,
Testing Your Animation Refresh Rate With CSS Crimes? (lun)9,774
, ,
Write About What You Learn—It Pushes You to Understand Topics Better (add)9,773
, , ,
Sophisticated, Highly-Targeted Attacks Continue to Plague npm (phy)9,772
,
dependency-time-machine (pil)9,771
, , , ,
Debugging Rules: Understand the System (raj)9,770
The Spectrum of Openness (hix)9,769
, ,
Nostalgia in UX Design (mar)9,768
, ,
Supercharge Your HTML With WebC (dav)9,767
, ,
Designing Accessible Text Over Images: Best Practices, Techniques, and Resources II (hum/sma)9,766
, , , ,
Balance in UX Design: Symmetry, Asymmetry, and Radial Balance (nng)9,765
, ,
Deprecating the “unload” Event (dre+/dev)9,764
, , , ,
Create Direction-Aware Effects Using Modern CSS (kev)9,763
, ,
Browsers Barely Care What HTTP Status Code Your Web Pages Are Served With (cks)9,762
, ,
OKLCH in CSS: Consistent, Accessible Color Palettes (its/log)9,761
, , , ,
WCAG 3.0: Further on Up the Road (ons/tpg)9,760
, ,
Google Tag Manager Performance: 9 Tips for Faster Site Speed (sin)9,759
, , ,
Progressively Enhanced HTML Accordion (aar)9,758
, , ,
Node.js’s Config Hell Problem (and/den)9,757
, , , ,
It’s Time to End Damaging Website Design Practices That May Harm Your Users (ico)9,756
, , , ,
Defining Test Cases and Priorities (lei/dev)9,755
An Introduction to the esbuild Bundler (cra/sit)9,754
, ,
A Beginner’s Guide to CSS Grid Layout (ral/sit)9,753
, , ,
OpenAI Launches Web Crawling GPTBot, Sparking Blocking Effort by Website Owners and Creators (ven)9,752
, , , ,
What Happens When You Select “count(*)” in MySQL (ami)9,751
,
What Does It Mean for Web Browsers to Have a Baseline (mar/the)9,750
, ,
UX Is Not Dead, It’s Just Misunderstood (nat/uxm)9,749
User-Adaptive Interfaces With “AccentColor” (oll)9,748
,
My Experience Modernizing Packages to ESM (ace)9,747
, ,
Micro Benevolences (est/ope)9,746
, , ,
An Update on Chrome Security Updates—Shipping Security Fixes to You Faster (goo)9,745
, , ,
An Introduction to htmx, the HTML-Focused Dynamic UI Library (jch/sit)9,744
,
An Intro to State-Based UI With JavaScript (cfe)9,743
, ,
8 Common Heading Questions (pop)9,742
, ,
200 Web-Based, Must-Try Web Design and Development Tools (j9t)9,741
,
Lean UX and Agile: Study Guide (aka/nng)9,740
, , , , ,
Definition of Done vs. Acceptance Criteria: What’s the Difference? (jas/res)9,739
, , ,
You Don’t Need a Mentor: Embracing the Power of Community (bek/ope)9,738
, ,
OpenAI’s ChatGPT New Web Crawler—GPTBot (rus/ser)9,737
, , , ,
Alt Text Hall of Fame (ste/alt)9,736
, , , ,
Top 7 Things That Kill Developer Productivity (sur)9,735
, , , , ,
The Risks of Micro-Frontends (inf/com)9,734
,
Some Tactics for Writing in Public (b0r)9,733
, ,
Migrating My Blog From Gatsby to Astro (sap)9,732
, ,
JSX Without React (chr)9,731
,
How to Improve Performance of Your Database by Indexing Large Tables (amh)9,730
, , ,
A Guide to Single-Page Application Performance (ray)9,729
, , , ,
Progressively Enhanced Form Validation: HTML and CSS (ger/clo)9,728
, , , ,
Scrolljacking 101 (nng)9,727
,
Optimizing Speed on ebay.com (add)9,726
, , ,
Beautify Your Git Log With a Single Command (pra)9,725
,