A Practical Introduction to Dependency Injection (sma) | | 387 |
introductions, javascript, maintainability |
HTML and CSS Techniques to Reduce Your JavaScript | | 386 |
html, css, javascript, performance |
Ethical Design Guide | | 385 |
websites, guides, design |
What’s Coming to Vuex? (sma) | | 384 |
vuejs, state-management, libraries |
The Art of Leadership | | 383 |
leadership |
Symbols to Copy | | 382 |
tooling, typography |
WordPress Cookies (wpe) | | 381 |
wordpress, cookies |
Using “throw” as an Expression in PHP 8 (ami) | | 380 |
php |
CSS Snapshot 2020 (tab+/w3c) | | 379 |
css, standards |
A Beginner’s Guide to Webpack | | 378 |
guides, webpack |
Ignore AMP (j9t) | | 377 |
google, amp |
Get Up to Speed With Partial Clone and Shallow Clone (sto/git) | | 376 |
git |
Meet Redwood, a Full-Stack, Serverless Jamstack Framework | | 375 |
frameworks, redwoodjs, jamstack |
W3C in 2020 (koa/w3c) | | 374 |
w3c, standards, retrospectives |
Why You Should Self-Host Google Fonts in 2021 | | 373 |
google, fonts |
The Shorthand–Longhand Problem in Atomic CSS (rob) | | 372 |
css, shorthands, cascade, atomic-css, css-in-js |
How and Why to Use Lynx—the Faster Web Browser (ede) | | 371 |
lynx, browsers |
Page Weight (htt) | | 370 |
web-almanac, studies, research, metrics, performance |
JavaScript (tka/htt) | | 369 |
web-almanac, studies, research, metrics, javascript |
Is Edge Computing Secure? Here Are 4 Security Risks to Be Aware Of | | 368 |
edge-computing, security |
Accessibility (htt) | | 367 |
web-almanac, studies, research, metrics, accessibility |
TLS and mTLS Demystified | | 366 |
security, tls, protocols |
Houdini.how (una/dev) | | 365 |
websites, css, apis, houdini |
CSS (lea+/htt) | | 364 |
web-almanac, studies, research, metrics, css |
Notes on Zsh and Oh My Zsh (spe) | | 363 |
shell |
Notes on HTML 3.2 (j9t) | | 362 |
html |
Command Line Interface Guidelines | | 361 |
websites, guidelines, command-line |
How to Display the Last Build Date in Eleventy (ste) | | 360 |
how-tos, eleventy |
CommonMark: A Formal Specification for Markdown (sma) | | 359 |
markdown, content, documentation |
The Internet’s Server-Based Infrastructure Is Ushering Us Through the Pandemic—Here’s How the W3C Is Helping | | 358 |
web, servers, w3c, standards |
Alt vs. Figcaption (tho) | | 357 |
html, accessibility, comparisons |
Why Choose TYPO3 CMS for Your Website | | 356 |
videos, typo3, content-management |
The State of UX: 100 Design Lessons for 2021 (fab/uxd) | | 355 |
user-experience, design, outlooks |
Time to Say Goodbye to Google Fonts: Cache Performance | | 354 |
google, fonts, caching, performance |
Weaving Web Accessibility With Usability (sma) | | 353 |
accessibility, usability, testing |
Why It’s Good for Users That HTML, CSS, and JS Are Separate Languages (hdv) | | 352 |
html, css, javascript |
To Be Creative, Practice | | 351 |
design, creativity |
Testing Vue Applications With the Vue Testing Library (sma) | | 350 |
vuejs, testing, tooling |
Know Your Standards (ste) | | 349 |
accessibility, standards, wcag, aria, html, link-lists |
Best Practices for Inclusive Textual Websites | | 348 |
security, performance, accessibility, best-practices |
Leveraging System Fonts on the Web (jim) | | 347 |
fonts |
CSS Vendor Prefixes | | 346 |
css, vendor-extensions |
Standardizing Select and Beyond: The Past, Present, and Future of Native HTML Form Controls (sea/sma) | | 345 |
html, forms |
Semantic Web With Structured Data | | 344 |
semantic-web, json, structured-data |
Upgrade Your HTML II (j9t/fro) | | 343 |
books, frontend-dogma, html, minimalism, craft, conformance |
A GitHub Action for Automated Deployment to WP Engine (clo) | | 342 |
github, deploying, automation, wordpress, wp-engine |
Creating a Continuous Integration Test Workflow Using GitHub Actions (sma) | | 341 |
nodejs, ci-cd, github-actions |
How to Deal With Common React JS Problems—Actionable Tips | | 340 |
how-tos, react, tips-and-tricks |
New WebKit Features in Safari 14 (jon/web) | | 339 |
release-notes, safari, apple, browsers, webkit |
Google Is Already Experimenting With WebP2 As Successor To WebP Image Format | | 338 |
webp, images, google |
What’s New in Vue 3? (sma) | | 337 |
vuejs |
Warp: Improved JS Performance in Firefox 83 (jan) | | 336 |
firefox, mozilla, browsers, javascript, performance, spidermonkey, javascript-engines |
No Config for Old Men | | 335 |
configuration |
The What, Why, and How of Using a Skeleton Loading Screen (tre) | | 334 |
performance, react |
Career Opportunities Mean a Lot of Things (kar) | | 333 |
career |
Authenticating React Apps With Auth0 (sma) | | 332 |
react, authentication, tooling, auth0 |
Markup (j9t+/htt) | | 331 |
web-almanac, studies, research, metrics, html |
Write Better Code and Be a Better Programmer by Avoiding “else” Statements | | 330 |
programming, best-practices |
The Raven Technique: One Step Closer to Container Queries (css) | | 329 |
css, container-queries, techniques |
Webmentions and Eleventy Talk (sia) | | 328 |
slides, webmentions, eleventy |
How to Find and Fix Common Website Accessibility Issues (kil) | | 327 |
how-tos, accessibility, contrast, color-blindness, colors, responsive-design, quality |
Internationalization and Localization for Static Sites (sma) | | 326 |
internationalization, localization, site-generators |
What Is Section 508 and Why Does It Matter? (deq) | | 325 |
accessibility, legal, section-508 |
Native CSS Masonry Layout in CSS Grid (rac/sma) | | 324 |
css, masonry, grids, layout |
Chasing the Pixel-Perfect Dream (jos) | | 323 |
design, css |
The Principles of Visual Communication (sma) | | 322 |
design, communication, principles, examples |
Bootstrap vs. Materialize Showdown | | 321 |
bootstrap, materialize, comparisons, frameworks |
Are Template Engines Still Relevant in 2020? | | 320 |
discussions, template-engines, pug, nunjucks, handlebars |
Authentication in Vue.js (sma) | | 319 |
vuejs, authentication |
A General Introduction to Cloud Computing | | 318 |
introductions, cloud-computing, concepts, history |
Getting Started With Next.js (sma) | | 317 |
introductions, nextjs, react |
Touch, Point, Click: Mouse vs. Touch Screen Input | | 316 |
accessibility, interaction-design, comparisons |
Handling Continuous Integration and Delivery With GitHub Actions (sma) | | 315 |
ci-cd, github-actions, heroku, deploying, automation |
Come Full Circle—Back to HTML | | 314 |
code-editors, vi+vim, neovim, html |
New Google Quality Rater Guidelines, Update Adds Emphasis on Needs Met | | 313 |
guidelines, seo, quality, google |
How to Test Responsive Web Design Cross-Browser Compatibility (cra) | | 312 |
how-tos, testing, responsive-design, browsers, support |
Core Web Vitals: A Guide to Google’s Web Performance Metrics (cra) | | 311 |
guides, google, web-vitals, performance |
Signed Exchanges (SXGs) (twi/dev) | | 310 |
authentication, signed-exchanges, web-packaging, performance |
An Opinionated Guide to Accessibility Testing | | 309 |
guides, accessibility, testing |
CSS “min()”, “max()”, and “clamp()” (una/dev) | | 308 |
css, functions, typography |
An Introduction to JSX | | 307 |
introductions, jsx |
The “--var: ;” Hack to Toggle Multiple Values With One Custom Property (lea) | | 306 |
css, custom-properties, hacks, toggles |
What Apple, Google, and Amazon’s Websites Looked Like in 1999 (mas) | | 305 |
design, history |
Node.js Testing Best Practices | | 304 |
nodejs, testing, best-practices, examples |
What Can We Learn From the W3C CMS Selection Process | | 303 |
w3c, tooling, content-management, lessons |
Getting Started With React: A Beginner’s Guide | | 302 |
introductions, guides, react, jsx |
How to Find the Cause of Horizontal Scrollbars (kil/pol) | | 301 |
how-tos, css, overflow, debugging, scrolling |
How to Design a Set of Icons | | 300 |
design, icons, images |
Tuning Your Apache Server | | 299 |
apache, servers, optimization, configuration |
Apache Configuration Basics | | 298 |
fundamentals, servers, apache, configuration |
How to Create High-Performance CSS Animations (rac/dev) | | 297 |
how-tos, css, animations, performance |
GitLab vs. GitHub—a Comparison of the Two Version Control Systems | | 296 |
version-control, gitlab, github, comparisons |
A Guide to HTML and CSS Forms (No Hacks) | | 295 |
guides, html, css, forms |
Micro-Note on “aria-roledescription” (ste) | | 294 |
accessibility, aria |
CSS Variables 101 (sha) | | 293 |
css, custom-properties |
Reading Content With RSS | | 292 |
rss, syndication |
Should Coding Be Mandatory? (ara) | | 291 |
programming, training, career |
Reducing the Site Speed Impact of Third-Party Tags | | 290 |
performance, embed-code |
Webflow vs. WordPress: A Head-to-Head Comparison | | 289 |
webflow, wordpress, content-management, hosting, comparisons |
Unit Testing in React Native Applications (sma) | | 288 |
react, native, testing |
Why I IndieWeb | | 287 |
indieweb, community |
“font-kerning” (geo/css) | | 286 |
css, kerning, typography |
Building and Running WebKit (mar) | | 285 |
webkit, building |
Smashing Podcast Episode 25 With Anthony Campolo: What Is RedwoodJS? (dre/sma) | | 284 |
podcasts, interviews, redwoodjs, jamstack |
Drawing the Invisible: React Explained in Five Visual Metaphors | | 283 |
videos, react |
Custom Properties: Questioning “:root” (j9t) | | 282 |
cross-posts, css, custom-properties |
The Good Web and the Bad Web (kzi) | | 281 |
web, mastodon, javascript |
Advanced GraphQL Usage in Gatsby Websites (sma) | | 280 |
gatsby, graphql, javascript |
Generate a Sitemap for Your Eleventy Website | | 279 |
eleventy, sitemaps, seo |
Change the [Eleventy] Default Directories (per) | | 278 |
eleventy |
MIME Types (IANA Media Types) (mdn) | | 277 |
mime-types |
npx [Cheatsheet] | | 276 |
npx, nodejs, cheat-sheets |
Mastering Wrapping of Flex Items (mdn) | | 275 |
css, flexbox, layout |
Basic Math in JavaScript—Numbers and Operators (mdn) | | 274 |
javascript, math, operators |
Animating React Components With GreenSock (sma) | | 273 |
react, gsap, javascript, components, animations |
React With TypeScript: Best Practices | | 272 |
react, typescript, best-practices |
Getting Started With Eleventy (11ty) | | 271 |
introductions, eleventy, site-generators |
Creating a Custom Cursor Using CSS? | | 270 |
css, images, svg, cursors |
An Introduction to Running Lighthouse Programmatically (sma) | | 269 |
introductions, lighthouse, google, automation |
AVIF Has Landed (jaf) | | 268 |
images, avif, performance, quality, jpeg, webp, svg, png, comparisons |
How to Automate API Testing With Postman (sma) | | 267 |
how-tos, testing, apis, automation, postman |
A Brief About Web Browser Wars | | 266 |
browsers, browser-wars, retrospectives |
Building React Apps With Storybook (sma) | | 265 |
react, storybook |
How the Heck Do I Use Eleventy? The Intro Guide I Wish I Had | | 264 |
introductions, guides, eleventy |
Everything Developers Need to Know About Figma (sma) | | 263 |
figma, processes |
My Experience With Jekyll | | 262 |
jekyll |
Adversarial Interoperability (plu) | | 261 |
interoperability, terminology, concepts, link-lists |
How to Create Customer-Centric Landing Pages (sma) | | 260 |
how-tos, landing-pages, content, design |
9 Best CSS Frameworks in 2020 | | 259 |
css, presentational-css, frameworks, bootstrap, foundation, bulma, tailwind, uikit, milligram, pure, tachyons, materialize, comparisons |
Electron 10.0.0 (kee/ele) | | 258 |
release-notes, electron |
Use Advanced Typography With Local Fonts (tom/dev) | | 257 |
typography, fonts, apis |
The Thing With Leading in CSS (mat) | | 256 |
css, typography |
Why Did Mozilla Remove XUL Add-Ons? | | 255 |
browsers, mozilla, xul |
Loading Third-Party JavaScript (add/dev) | | 254 |
javascript, performance |
“this” in JavaScript and TypeScript (dea) | | 253 |
javascript, typescript |
The Anti-Reset (to Reset to User Agent Styles) (j9t) | | 252 |
css, resets |
Mastering Props and PropTypes in React (sma) | | 251 |
react, props |
21 Node.js Interview Questions With Solutions | | 250 |
nodejs, interviewing |
Microsoft Will Bid Farewell to Internet Explorer and Legacy Edge in 2021 (ver) | | 249 |
browsers, microsoft, internet-explorer, edge |
Effective Code Browsing | | 248 |
code-reviews |
JS Minification Benchmarks | | 247 |
javascript, minification, metrics |
A Smashing Guide to the World of Search Engine Optimization (fre/sma) | | 246 |
guides, seo, link-lists |
Accessibility in Chrome DevTools (sma) | | 245 |
dev-tools, chrome, google, browsers, accessibility |
Meet Polypane, a Browser That Makes You Five Times Faster (kil) | | 244 |
polypane, browsers, productivity, developer-experience |
Performance Is an Issue of Equity (clo) | | 243 |
performance, accessibility |
Islands Architecture | | 242 |
architecture, html, concepts |
Smashing Podcast Episode 22 With Chris Coyier: What Is Serverless? (chr+/sma) | | 241 |
podcasts, interviews, architecture, serverless |
Better Error Handling in Node.js With Error Classes (sma) | | 240 |
nodejs, javascript, errors |
Difference Between Concurrent Versions System (CVS) and Subversion (SVN) | | 239 |
comparisons, version-control, cvs, svn |
Vue vs. React in 2021: Which Framework to Choose and When | | 238 |
frameworks, vuejs, react, comparisons |
The Myth of Incentive Alignment (lor) | | 237 |
culture, prioritization, google |
In a Land Before Dev Tools (amb) | | 236 |
dev-tools, browsers |
Five Decades of Access to Tools (lor) | | 235 |
tooling |
The Renaissance of No-Code for Web Designers (sma) | | 234 |
design, low-and-no-code |
Updating React at Etsy | | 233 |
case-studies, react, preact, frameworks |
Introduction to Metrics, Monitoring, and Alerting | | 232 |
introductions, metrics, monitoring, alerting |
Accessibility on the Canvas With JavaScript | | 231 |
accessibility, javascript, canvas |
Happy Birthday Web Fonts! (w3c) | | 230 |
anniversaries, fonts, woff, standards |
Introduction to Memoization in JavaScript (hic) | | 229 |
introductions, memoization, javascript |
How to Use Styled Components in React (sma) | | 228 |
how-tos, react, css-in-js, css, javascript |
Writing Alt Text for Data Visualization | | 227 |
accessibility, images, alt-text, writing, information-design, visualization |
Modern CSS Techniques to Improve Legibility (sma) | | 226 |
css, techniques, legibility, typography |
The Recruitment Confusion Matrix and Your Right to Be Wrong | | 225 |
hiring, metrics |
ReactJS: A Simple Custom Hook | | 224 |
react, hooks |
Why We Moved a 20-Year-Old Site to Gatsby | | 223 |
gatsby, migrating |
Terminating a Frozen SSH Session | | 222 |
ssh, command-line |
JSON-LD 1.1 (gke+/w3c) | | 221 |
json-ld, json, standards |
Methods of Improving and Optimizing Performance in React Apps (sma) | | 220 |
react, performance, optimization |
Release Notes for Safari Technology Preview 110 (jon/web) | | 219 |
release-notes, safari, apple, browsers |
JavaScript to Know for React (ken) | | 218 |
javascript, react |
An Introduction to Stimulus.js (sma) | | 217 |
introductions, frameworks, stimulus |
JavaScript Event Delegation: A Beginner’s Guide | | 216 |
guides, javascript, events |
Most Popular JavaScript Frameworks in 2020 | | 215 |
frameworks, javascript, react, angular, vuejs, nodejs, svelte, comparisons |
Germany Digital Accessibility Laws: BITV (2.0) and BGG | | 214 |
legal, bitv, accessibility |
Node.js vs. Deno: What You Need to Know | | 213 |
nodejs, deno, runtimes, comparisons |
Crowdfunding Web Platform Features With Open Prioritization (rac/sma) | | 212 |
web-platform, prioritization |
Create and Activate GitHub Profile README | | 211 |
github, readme |
CSS Transitions in Vue.js and Nuxt.js (sma) | | 210 |
vuejs, nuxt, css, transitions |
How to Document the Screen Reader User Experience | | 209 |
how-tos, screen-readers, assistive-tech, documentation, user-experience |
Webwaste (ger/ali) | | 208 |
web, sustainability, images |
The Vuetify Roadmap (vue) | | 207 |
release-notes, vuetify |
The Browser Engine That Could (jay) | | 206 |
history, browsers, browser-engines, trident, gecko, presto, khtml, webkit, v8, blink, safari, apple, konqueror, chrome, google, link-lists |
A Beginner’s Guide to Microcontent | | 205 |
guides, content, microcontent, concepts |
The Cicada Principle, Revisited With CSS Variables (lea) | | 204 |
principles, css, custom-properties |
#defundAI (tan) | | 203 |
ai, economics |
Browser Wish List—Tabs Time Machine (kar) | | 202 |
browsers, wish-lists |
A Brief Introduction to WebGL | | 201 |
introductions, webgl, javascript |
We Need More Inclusive Web Performance Metrics (sco) | | 200 |
performance, metrics, dei |
The Ultimate Guide With All the Secrets You Will Need to Know to Become a Fabulous Design Unicorn (uxd) | | 199 |
websites, guides, design |
Learn Deno: A Secure JavaScript and TypeScript Runtime | | 198 |
deno, runtimes, javascript, typescript |
WebGPU Fundamentals | | 197 |
fundamentals, webgpu |
Introduction to Logging in Python | | 196 |
introductions, logging, python |
Let’s Not Be Pedantic About “Open Source” (arp) | | 195 |
foss, history |
Fast Sorting With Quicksort | | 194 |
algorithms, sorting |
Learn Regex: A Beginner’s Guide | | 193 |
guides, regex |
Web Standards | | 192 |
standards, w3c, html, xml, xhtml, css, wcag |
How to Install Apache Web Server on Windows (cra) | | 191 |
how-tos, installing, servers, apache, microsoft, windows |
Namespaces in JavaScript | | 190 |
javascript, namespaces |
What Is Type Coercion in JavaScript ? | | 189 |
javascript, operators, concepts |
Information and Information Architecture: The Big Picture (sma) | | 188 |
information-architecture, content, navigation, user-experience |
Learn GSAP in 23 Minutes | | 187 |
videos, gsap |
Platform Adjacency Theory (sli) | | 186 |
browsers, web-platform |
90’s Cursor Effects | | 185 |
cursors, effects, javascript |
CSS Debt | | 184 |
css, technical-debt, maintainability, testing, namespaces, preprocessors |
Speeding Up My Shell (Oh My Zsh) | | 183 |
shell, command-line, tooling, optimization |
CSS Fundamentals: Vendor Prefixing | | 182 |
css, fundamentals, vendor-extensions |
A Practical Guide to Testing React Applications With Jest (sma) | | 181 |
guides, testing, react, jest |
App Shell UX With Service Workers and Streams (jef/dev) | | 180 |
web-apps, single-page-apps, architecture, web-workers, streaming, javascript |
WAI–ARIA Usage (tpg) | | 179 |
bookmarklets, accessibility, aria, compliance |
GitHub CLI: A Guide to GitHub from the Command Line | | 178 |
guides, github, command-line |
A Lazy Dark Mode | | 177 |
dark-mode, react |
Sending Emails in PHP With PHPMailer | | 176 |
email, php, tooling |
What Is P3P Policy and How Does It Work? | | 175 |
p3p, policies, standards, privacy |
Remembrance of Tags Past (mey) | | 174 |
history, web-platform, html, xhtml, css, hacks, doctype-switching |
Decentralization Off the Shelf | | 173 |
websites, design-patterns |
JavasSript RORO Pattern | | 172 |
javascript, software-design-patterns |
Internationalization in Vue With the Vue I18N Plugin (sma) | | 171 |
vuejs, plugins, internationalization, localization |
Allow End-User Styling Overrides (alv) | | 170 |
css, cascade, user-styles |
Higher-Order Components in React (sma) | | 169 |
react, components |
The Importance of Clarity in UX (uxd) | | 168 |
user-experience, design |
How to Set Up a Blog With Eleventy | | 167 |
how-tos, eleventy, blogging |
Firebase Config in a React App (ama) | | 166 |
firebase, configuration, react |
Meteor vs. Next? A Brutally Honest Answer | | 165 |
frameworks, meteor, nextjs, comparisons |
What Is Parallax Scrolling, Explained With Examples | | 164 |
parallax, scrolling, effects, examples |
Why You Should Use SWC (and Not Babel) (log) | | 163 |
transpiling, tooling, babel |
How to Add a Sitemap to Eleventy | | 162 |
how-tos, eleventy, sitemaps |
Web Crawler vs. Web Scraper: The Differences | | 161 |
crawling, scraping, comparisons, terminology |
The Complete Guide to CSS Media Queries (kil/pol) | | 160 |
guides, css, media-queries |
Jekyll vs. Hugo vs. Gatsby vs. Next vs. Zola vs. Eleventy | | 159 |
site-generators, jekyll, hugo, gatsby, nextjs, zola, eleventy, comparisons |
5 Projects to Help You Master Modern CSS (cra) | | 158 |
css, print, forms, performance |
Dark Patterns in UX | | 157 |
user-experience, dark-patterns |
30 Seconds of Code | | 156 |
websites, javascript, css, techniques |
Equivalent Experiences: What Are They? (eri/sma) | | 155 |
accessibility, dei, community, design, user-experience |
GitHub Actions: A Deep Dive Into “pull_request” (fro) | | 154 |
deep-dives, github-actions, ci-cd, automation |
CUBE CSS (bel) | | 153 |
websites, css |
Web Platform Contribution Guide (zco/boc) | | 152 |
websites, guides, web-platform, standards, community |
Getting Started With Axios in Nuxt (sma) | | 151 |
introductions, nuxt, nodejs |
Tools for Better Thinking | | 150 |
websites, productivity, learning, training |
Building Reusable React Components Using Tailwind (sma) | | 149 |
react, components, tailwind, maintainability |
Today’s JavaScript, From an Outsider’s Perspective (lea) | | 148 |
javascript |
On Fixed Elements and Backgrounds (hui) | | 147 |
css, backgrounds, positioning, scrolling, performance |
Some .zshrc Tricks (arp) | | 146 |
shell, command-line, configuration, aliases, tooling, tips-and-tricks |
How to Design a Brand Logo (With Ease) (sma) | | 145 |
how-tos, design, branding, logos, images |
A User’s Guide to CSS Variables (lea) | | 144 |
guides, css, custom-properties |
Ask an Expert: Why Is CSS… the Way It Is? (svg) | | 143 |
css |
Micro-Frontends in Context | | 142 |
micro-frontends |
How to Reevaluate Your Frontend Architecture | | 141 |
how-tos, architecture |
The Third Age of JavaScript | | 140 |
javascript |
The Secret of Typography, Kerning, Explained for Dummies (uxd) | | 139 |
typography, kerning |
Static Hoisting (rau) | | 138 |
javascript |