
Redirect a Default Netlify Subdomain to Your Custom Domain
When you set up a custom domain in Netlify, the default netlify.com subdomain still returns your app, which can lead to duplicate content. It is an easy fix.
Articles from more than two decades of building, rebuilding, debugging, and leading web projects.

When you set up a custom domain in Netlify, the default netlify.com subdomain still returns your app, which can lead to duplicate content. It is an easy fix.

On the occasion that you need to break a single (or several) CSS rules out of the nested structure of your CSS, the Sass @at‑root rule is exactly what you need.
Use Sass loops more deliberately, including while, for, and each patterns, generated selectors, readable output, and where loops beat repetition.

How Storybook can document front‑end components, states, edge cases, accessibility checks, and design conversations outside the main application.

Hide empty elements with the CSS :empty pseudo‑class, including strict matching rules, whitespace caveats, supported selectors, and practical UI uses.

Disable text selection with CSS user‑select, including browser prefixes, input caveats and a visual ::selection fallback for older browsers.

content PropertyThe 'content' property in CSS is often used to insert graphical elements which ‑ on their own ‑ do not have an accessible alternative text available.

Need a little PHP inside a Gatsby build? This guide shows a pragmatic way to prepend server‑side code when a fully static approach is not enough.

urllist.txt from sitemap.xmlUsing PHP it is quick and easy to automatically generate your urllist.txt sitemap from your sitemap.xml file (for example, using gatsby‑plugin‑sitemap).

Conditional comments were once the standard way to target Internet Explorer. This guide shows how the non‑IE pattern works and where it catches people out.

The differences between throttling and debouncing in JavaScript, including practical TypeScript code examples. Optimise event handling and improve performance.

Replacing every instance of a string in JavaScript depends on what you are matching. This guide covers replaceAll(), regexes, and older fallbacks.

Measure element dimensions in JavaScript with clientWidth, offsetWidth, getBoundingClientRect(), innerWidth, outerWidth, and responsive layout cautions.


Manage colours, spacing, typography, breakpoints, and component values in front‑end code without scattering design decisions or weakening consistency.

float PropertyUse and clear the CSS float property in legacy layouts, including text wrapping, clearing behaviour, layout examples, and when modern tools are better.

display in CSSUnderstand the CSS display property, including block, inline, inline‑block, none, flex, and grid, plus how defaults affect front‑end layout decisions.

grid in CSSStart using CSS Grid with containers, columns, rows, item placement, gaps, track sizing, flexible layouts, and practical two‑dimensional examples.

useReducer in ReactuseReducer in React explained clearly, including reducer functions, action objects, complex state updates, and when it is a better fit than useState.

A brief explanation of how to check if three variables are equal in JavaScript using the equality operators, ternary operator and Array.prototype.every method.

A brief explanation of how to toggle a variable in JavaScript by inverting its value. Learn how to switch a variable from true to false and vice versa.