In the early days of the web, we were used to waiting. But today, modern users demand instant feedback. Yet, many of our applications still suffer from what I call the “slow-motion tortoise 🐢” runnin
Managing forms in React applications can become complex and error-prone as your app grows. Yet, leveraging the right design patterns can drastically simplify this process, making your forms more reusable, scalable, and easier to maintain. In this com...
Day 02 of 40 Days of JavaScript is where JavaScript starts to feel real. Today’s focus is on variables, how values are stored, and why JavaScript behaves the way it does when data changes. If variables are not clear, everything that follows—functions...
If you’ve ever wondered how buttons become clickable, how animations react to user actions, or how websites feel alive, JavaScript is the answer. This article is based on Day 01 of the 40 Days of JavaScript journey, where we lay the foundation for le...
Ever wondered how JavaScript knows when to run your .then() block? Or why your console.log("done") appear before a resolved promise result? Let’s break it down in this quick TidBit! What is a Promise? A Promise is JavaScript’s way of saying: “I’ll g...
The startup landscape is at a critical inflection point for QA testing. While the demand for quality software has never been higher, the State of Testing Report by PractiTest reveals a concerning skills gap: 42% of testers don't feel comfortable writ...
ECMAScript, also known as the backbone of JavaScript, has come a long way since its birth at Netscape in 1995. Within two years, it was standardized as ECMAScript 1. It only took ECMAScript 4 years to reach its third generation. By 1999, it had gaine...
Recently I encountered a couple of challenging use cases with the shadcn/ui dialog box with forms as its content. As I learned to tackle them, here is what I learned to share with you, hoping that it helps you as well. First, the shadcn dialog box co...
JavaScript array methods offer plenty to web developers already. The methods like map(), reduce(), filter() , some(), every(), and many more have helped build our JavaScript muscles for better logic and algorithms. The with() method is a relatively n...
Authentication and Authorization are the implicit needs for any user-facing application. Using authentication users let the application and underlying services know who they are, and if they are the legitimate people to get access to the system. Ther...
Full-stack development is not just about making the front end talk to the back end, and vice-versa. You need to keep additional peripherals in mind to put yourself in the shoes of a full-stack developer. A full-stack developer should be equipped with...
Uploading and previewing images are fundamental requirements in any modern user-centric application. Be it Facebook, Instagram, WhatsApp, Twitter, LinkedIn, whatever you name, you have it there. In this article, we will learn how to handle image uplo...
Next.js App router enables us to create file-system-based routing where the top-level app/ folder acts as the root route(/), and a special page.js file under it acts as the page for that route segment. Often, we would like to go from one page to anot...
Developers are agile. Their work environments are also rapid and fast-moving to keep them on their toes most of the time. I can imagine a situation like this would be quite normal at your workplace: You are working on a feature and, in between, makin...
Introduction There are now nearly 9 million apps worldwide, and practically all of them run on an internal clock. Financial apps are built on timestamped data. Office apps run on calendars. Social apps are defined by their feeds, timelines and annive...
Next.js App Router has brought many improvements over its predecessor, Page Router. One of the significant improvements is the routing itself. Next.js App Router uses the file-system-based router, where you create directories(aka folders) to define r...
Padding a string means filling up a string with another character sequence or string. For example, you have written a function to the time formatted in hh:mm:ss format. function getTime() { const hour = new Date().getHours(); const min = new Dat...
Function in programming is a block of code that performs a specified task. You define them once and can call them(using a name in most cases) wherever you want to perform that task. JavaScript is no different. In JavaScript, one of the popular ways t...
JavaScript Date object provides many helpful methods for dealing with date and time. The list is so vast that it is sometimes hard for developers to track which method provides what value. Also, it is a bit tricky to retrieve a few information straig...
Developers learn better when they build or create something out of their learnings. We need to put our learnings into practice and try problem-solving. When we attempt to learn multiple technologies together or try out a tech stack, it makes sense to...