JS

Handling Large File Uploads in React: The Multipart Upload Approach

In my last project, I ran into a problem: how to handle large file uploads in a React app. The single request file upload wasn’t working for files over 100MB. Network instability, slow speeds, and interruptions caused failed uploads and a bad user experience. That’s when I looked into multipart file uploads—a technique that involves […]

October 21, 2024

JS

NestJS: What, Why, and How

Introduction As the complexity of my Node.js projects increased, handling larger codebases got more difficult. The scaling process seemed sluggish and error-prone due to manual dependency wiring, fragmented structure, and a lack of robustness. Keeping clean, orderly codebases while incorporating additional libraries or services was difficult. That’s when I explored NestJS, and it transformed my […]

September 25, 2024

JS

Understanding State Batching in React

Introduction In the world of React, efficient rendering and performance optimization are the keys to success. One of the most important concepts that plays a key role in React state updates is State Batching/Automatic Batching. This mechanism was introduced in React version 18, which significantly impacts the application’s performance and management of the state updates. […]

September 23, 2024

JS

Unraveling the Power of gRPC: A Comprehensive Guide to the Protocol

In the dynamic landscape of distributed systems, communication between services is critical. As modern applications evolve, the need for efficient and scalable communication protocols becomes increasingly evident. One such protocol that has gained significant traction in recent years is gRPC. What is gRPC? gRPC, which stands for gRPC Remote Procedure Call, is an open-source RPC […]

September 22, 2024

JS

Containerizing Your Node.js Server with Docker: Using Custom Docker Bridge Network

Introduction: Why Containerization Is Important In modern software development, containerization has become a standard practice, particularly for Node.js applications and microservices. But why is containerization so valuable? Consistency Across Environments: One of the main challenges in development is environment inconsistencies. An application that runs on your local machine might behave differently in production due to […]

September 20, 2024

JS

Encryption and Hashing in JavaScript

In today’s digital landscape, the need to secure data is more critical than ever. Whether you’re transmitting sensitive information or storing user credentials, understanding the mechanisms that protect this data is essential. In the world of JavaScript, encryption and hashing are two key techniques that developers can leverage to safeguard information. But what exactly are […]

September 17, 2024

JS

Web Speech API

Overview The Web Speech API aims to enable web developers to provide in a web browser, speech-input and text-to-speech output features. It is a JavaScript API that allows websites and web applications to incorporate the two key features of speech recognition and speech synthesis into their functionality. It works by translating speech from your device’s […]

September 17, 2024

JS

Should You Choose AWS DynamoDB for Your Next Project?

When I started my career as a software engineer, I was curious about the differences between databases used in different environments. In our local development, we used MongoDB, a popular NoSQL database. But when our application was deployed to production, we switched to AWS DynamoDB. I wondered why we didn’t stick with MongoDB in production […]

September 16, 2024

JS

What, Why, and Where: Design Patterns

Introduction As developers, we often encounter new concepts, tools, or techniques that raise fundamental questions in our minds: What problem does it solve? Why should we use it? Where do we implement it? In this blog, I’ll explore these aspects in the context of design patterns in JavaScript. But first, let’s start with a simple […]

September 11, 2024