
Object.is() vs. Strict Equality in JavaScript
Compare Object.is() and strict equality in JavaScript, including NaN, signed zero, loose equality contrast, and when precision matters in real code.
Articles
Front‑end web development is my personal niche, it is the art of creating visual and interactive elements for a website, including layout, design, and interactivity, using HTML, CSS, and JavaScript.
Below you will find a subset of articles from my blog specifically about Front‑End Development. This is an area that I have worked with for many years, and have managed to write about quite a few times. There are three hundred thirty‑seven collected together for you below.

Object.is() vs. Strict Equality in JavaScriptCompare Object.is() and strict equality in JavaScript, including NaN, signed zero, loose equality contrast, and when precision matters in real code.

fetch Blocked?CORS explained for JavaScript fetch errors, including same‑origin policy, server opt‑in, preflight requests, credentials, and what front‑end code can fix.

Create and dispatch custom events in JavaScript with CustomEvent, detail payloads, bubbling, naming choices, cancellation, and component examples.

CSS is key to delivering responsive, accessible, and visually appealing freelance projects. Here, I explore essential techniques and practices to master CSS.

CSS preprocessors like Sass and Less enhance standard CSS with features like variables and nesting. Here, I explore their benefits and why they're essential.

A deep dive into the fundamentals of HTML, the foundation of the web. Here I cover its history, usage, evolution, and integration with other web technologies.

Object.freeze(), Object.seal(), and preventExtensions()`Object.freeze()`, `Object.seal()`, and `preventExtensions()` explained clearly, including what each allows, what they block, and why shallow locking matters.

visibility: Hiding Elements Without Affecting LayoutCSS `visibility` hides elements without altering layout. Here, I explain its use cases, differences from opacity, and how it maintains document flow.

opacityCSS `opacity` controls transparency, from fully opaque to invisible. Here, I explain how it works, its interaction with layout, with practical examples.

Optimise HTML markup for SEO and accessibility with semantic elements, heading structure, alt text, clean code, anchor text, and crawler‑friendly structure.

Number.isNaN(), Number.isFinite(), and Number.isInteger() in JavaScriptNumber.isNaN(), Number.isFinite(), and Number.isInteger() explained through strict numeric checks, coercion traps, parsing boundaries, and validation.

Browser and Node.js JavaScript compared through host APIs, globals, modules, async behaviour, DOM access, server APIs, and environment mix‑ups cleanly.

A fairly entry‑level overview of the basics of CSS positioning. Learn how to use `static`, `relative`, `absolute`, and `fixed` positioning with examples.

Promises make asynchronous JavaScript easier to reason about. This introduction covers pending, fulfilled, rejected, and how chaining cleans things up.

Function declarations vs. function expressions vs. arrow functions in JavaScript, including hoisting, `this`, readability, and when each style fits best.

Rest and spread operators solve different problems in JavaScript. This beginner‑friendly guide shows the syntax, the difference, and common use cases.

Use JavaScript template literals for multi‑line strings, interpolation, cleaner formatting, practical string construction, and pitfalls around whitespace.

String.startsWith(), endsWith(), and includes() in JavaScriptUse startsWith(), endsWith(), and includes() in JavaScript for clearer string checks, case‑sensitive matching, position arguments, and readable intent.