Articles for people who
ship the stack
Rewrites on React, Node.js, TypeScript and AI. A translated body is shown when it exists. If it does not, you see the English text and a note that says so.
Tagged: HTML
HTML is markup, not a programming language — use it like one
Treat HTML as structure for navigation, SEO, accessibility, and render performance, and replace div soup with semantic elements the browser and crawlers can understand.
3 min readFive link rel hints that speed First Contentful Paint
Use preconnect, preload, dns-prefetch, prefetch, and modulepreload in the document head to warm connections and cut resource waterfalls without rewriting the app.
3 min readTyped CSS attr(): Feeding HTML Attribute Values Straight Into Styles
Learn how typed CSS attr() turns data attributes into lengths, colours and times, how its fallbacks fail, why url() is blocked, and how to ship it safely today.
18 min readWho Should Own UI Behavior? Choosing Between HTML, CSS and JavaScript
A framework for deciding when native HTML and CSS features like dialog, popover, :has() and container queries should replace JavaScript, and when they should not.
15 min readAn Animated Thumbs-Up Feedback Button Without Any Animation Library
Build a thumbs-up and thumbs-down feedback widget with a keyframe pop animation, active states and a fetch call, using only HTML, CSS and a few lines of JavaScript.
7 min readStructure, Style, Behavior: How HTML, CSS and JavaScript Divide the Work
A beginner-friendly map of what HTML, CSS and JavaScript each own on a web page, how they cooperate, and which common mistakes blur the lines between them.
6 min readFrom Div Soup to Meaningful Markup: A Practical Semantic HTML Guide
Learn why generic divs break accessibility, crawling and maintainability, which semantic elements to use instead, and how to refactor a real card component.
16 min readJSX Is Not HTML: The Real Trade-offs Behind Component Markup
Understand what you give up when markup becomes JSX, from tooling and parsing to forms, accessibility and portability, and the patterns that win most of it back.
13 min readSix Native HTML Features That Replace Common JS UI libraries
Learn how popover, exclusive details, dialog, Declarative Shadow DOM, fetchpriority and datalist replace custom JavaScript, plus the limits each one still has.
6 min read
About these articles
Request a 24h estimate
Need the same stack in a production operator layer? Send the brief — estimate within 24 hours.