Hi, I'm Emdadul
I write about web dev, software engineering & technology.
Exploring ideas, sharing learnings, and building things for the web.
Latest posts
How to Add a Native Rich Text Editor in Expo / React Native (No WebView)
Rich text editing in React Native has always been tricky — especially when you want native performance instead of relying on WebViews. Most available libraries work great for the web, but fall short on mobile. That’s where [expo-rte](https://github.c...
How to Implement Multi-Factor Authentication (MFA) with TOTP in Your Web Application
In today’s digital landscape, securing user accounts with just a password isn’t enough. Multi-Factor Authentication (MFA) adds an essential layer of security by requiring users to provide two or more verification factors. In this comprehensive guide,...
Host Your Own S3-Compatible MinIO Server on a VPS with Caddy and HTTPS
Host Your Own S3-Compatible MinIO Server on a VPS with Caddy and HTTPS Want to self-host object storage like AWS S3 but on your own VPS? Say hello to MinIO — a blazing-fast, S3-compatible storage solution. In this guide, we’ll show you how to install...
How to Add TanStack Query in Astro + React Project
Photo by Lautaro Andreani on Unsplash TanStack Query (formerly known as React Query) is a powerful tool for data fetching, caching, and synchronization in React applications. It simplifies handling server-side state in a predictable and efficient man...
How to Solve the Expo Network Response Timed Out Problem
If you’re developing a React Native app with Expo and you’re encountering a “network response timed out” error, it’s likely due to the port that Expo’s Metro bundler is running on not being open on your machine. The solution is to open the necessary ...
20 Awesome APIs to Enhance Your Development Projects
Photo by Douglas Lopes on Unsplash As a developer, having access to powerful APIs can be a game-changer, allowing you to quickly integrate robust functionality into your applications. In this post, we’ve curated a list of 20 awesome APIs spanning var...
Warp — The Terminal Reimagined for Modern Developers
[Warp-your new favorite terminalWarp is a Rust-based terminal built for speed. With Warp, you can type in a terminal like an IDE, navigate your output…app.warp.dev](https://app.warp.dev/referral/EXNJM6 "https://app.warp.dev/referral/EXNJM6") If you’r...
Introducing Queryhub: Revolutionizing Learning with AI-Powered Study Companion
Hello friends and family, brothers and sisters, and the World!!! We’re Introducing Queryhub — Your Ultimate Study Companion! https://www.queryhub.info As students ourselves, we understand the challenges of navigating through vast amounts of academi...
A Guide to Downloading Images from a Database using Node.js
Photo by Sigmund on Unsplash Introduction: In this tutorial, we’ll explore how to download images from a MongoDB database using Node.js. We’ll walk through setting up a Node.js project, connecting to a MongoDB database, defining a schema for image UR...
Setting Up Seeders in Node.js and Mongoose with Example
Photo by Gabriel Heinzer on Unsplash Introduction: In Node.js applications using MongoDB with Mongoose, seeders play a crucial role in populating the database with initial data. This article will guide you through the process of setting up seeders, w...
Resolving “Window is not defined” Error during npm run build in Next.js SSR Application
Window is not defined solution Background Our development team encountered a critical issue while running the npm run build command in a Next.js server-side rendered (SSR) application. The error message indicated that "window is not defined," pointin...
Integrating OAuth with Google using the Devise Gem(ROR): Comprehensive Documentation
Photo by Mitchell Luo on Unsplash Introduction OAuth (Open Authorization) is an industry-standard protocol for authorization, enabling third-party applications to access user data without requiring the user to share their login credentials. In this d...
Mastering GitHub OmniAuth Integration in Ruby on Rails: A Step-by-Step Guide
Photo by Roman Synkevych on Unsplash Step 1: Go to the GitHub Developer Settings page: https://github.com/settings/developers Click on the “New OAuth App” button. Fill in the required fields: Application Name: Choose a name for your application. H...
A Guide to Web Accessibility
Hey there, fellow creators! Today, let’s dive into something that’s close to our hearts—web accessibility. Imagine a world where everyone can effortlessly surf the digital realm, regardless of their abilities. In this blog post, we’re talking about m...
Boost Your Website’s Speed Using Contemporary Picture Formats
Welcome to the fast-paced universe of web development, where optimizing website performance reigns supreme. Today, let’s uncover the often-overlooked magic of image formats and their profound impact on web performance and loading times. Optimized ima...
Exploring the Most Used Linux Commands with Examples
Photo by Gabriel Heinzer on Unsplash Introduction: Linux, with its powerful command-line interface (CLI), is a favorite among developers, system administrators, and enthusiasts alike. It offers a plethora of commands that make it a versatile and effi...
How to Set Up Husky, ESLint, and Prettier in a Node.js Project
Photo by Pakata Goh on Unsplash In this tutorial, we will walk you through the process of setting up Husky, ESLint, and Prettier in a Node.js application. These tools will help you maintain consistent code quality, enforce coding standards, and ensur...
Integrating GitHub OAuth with Passport.js: Handling Email Validation
Photo by Gabriel Heinzer on Unsplash Introduction:OAuth authentication is a powerful way to enable users to log into your application using their existing accounts on popular platforms like Google and GitHub. Passport.js, a widely-used authentication...
Using Git Bash with Multiple GitHub Accounts using SSH Keys
Photo by Roman Synkevych on Unsplash Introduction: If you’re new to the world of version control and collaborating on GitHub, you might be wondering how to handle multiple GitHub accounts on the same computer efficiently. Fortunately, with a simple s...
Oracle Cheat Sheet
Oracle Logo Oracle is one of the most popular relational database management systems in the world, used by many organizations to store and manage their data. SQL is the standard language used to interact with Oracle databases, allowing users to retri...
MongoDB Cheat Sheet
MongoDB Logo MongoDB is a popular NoSQL database used in modern web applications. With its flexible document-based data model and scalability, it has become a go-to database for many developers. However, with its many features and options, it can be ...
Guideline for reading papers.
Reading a paper can be a daunting task, especially if you are new to the field or the paper is particularly technical. Here is a step-by-step guideline that you can follow to read a paper: Start with the title and abstract: The title and abstract ca...
Mongoose Cheat Sheet
mongoose If you’re working with Mongoose, the popular object data modeling (ODM) library for MongoDB in Node.js, having a quick reference guide or “cheat sheet” can be incredibly helpful. In this blog post, we provide a concise summary of some of the...