How to Limit AWS IAM User Access to a Single S3 Bucket
January 29, 2023One of the common security practices is the principle of least privilege concept which is basically as a user you ONLY have permission to doā¦
š I'm Ashik Nesin ⢠Principal Software Engineer šØāš»ā¢ I write about web development and share insights into the behind-the-scenes of the projects that I'm building.
One of the common security practices is the principle of least privilege concept which is basically as a user you ONLY have permission to doā¦
Ever wanted to use AWS S3 as a replacement for your native file system (fs) in Node.js? There could be lots of cases in which you mightā¦
Sometimes you just want to keep things simple and deploy a simple website/blog from your machine. For example, a coming soon page or aā¦
If you have a static website/blog but want to have a comment system then Cusdis might be a good choice for you. Itās Lightweight and privacyā¦
Sometimes, you might run into a blog post/website where the content is sort of paywalled like the one from Medium which you donāt useā¦
Whether you want to automate your day-to-day workflow or you want to customize your favourite website however you want or build a product onā¦
There will be cases in which you might want to send SMS to your customers like a critical notification or OTP or something like that. Twilioā¦
Even wondered to use your Telegram to keep on track of your important events in real-time or just use it to get custom push notificationsā¦
As our app grows so do our environment variables as well. We start with a couple of things like DB credentials and it slowly growsā¦
Iāve recently started using Cloudinary for generating Open Graph Images. When I was trying to optimize the process, I learned aboutā¦
Ever wondered to get a real-time push notification for Netlify builds? So that you can avoid going to Netlify Dashboard just to check theā¦
We all know that importing files in our project becomes slightly complex as our app grows with so many nesting. Using a relative path mightā¦
Sometimes, all you want is a simple website. No Git, No time-consuming build steps, No CI/CD pipeline, Nothing. Just a simple file hostingā¦
Open Graph images help our blog/website to stand out when it is shared on social media or in other places like in chats. However, creatingā¦
Ever wanted to create recursive directories with you Node.js code? Here is how to do it without any dependencies Happy nested directories!
Images are essential part of any website. It helps us to understand the content better. Without it, we might feel the site is boringā¦
If youāre working on revamping color palette used in the frontend app/website or making a major revamp in your design system. Then chancesā¦
Sometime, you might want to execute a single API request multiple times. And also want add some delay between then to avoid getting itā¦
At times, there might be an use case in which youāll need to request an API call or resolve a Promise only once for performance reason andā¦
We spend most of our time using text editor like VS Code. It comes with lots of useful features by default and you can further customize itā¦
Digital signature can be used to sign documents digitally. And in India, they are regulated by the government and are legally recognized asā¦
Iāve recently came to know about Vercelās Edge Config when I was trying to learn the architecture behind the Dub.sh It was used in handlingā¦
If youāre selling a product or service targeting Indian audiences, then you may be using or thinking about using Razorpay. Razorpay is aā¦
Building a form can be a complex process that involves many things, such as ensuring that the form is responsive, handling notifications andā¦
A 404 error, or āPage Not Foundā error, can occur for various reasons such as a mistyped URL, a broken link, or a deleted page. When a userā¦
Redirection is a common use case in web development, whether youāre making a small change to a URL or moving an entire blog to a new domainā¦
If your product is customer-facing, like a chat widget or embed, and youāre using Sentry for error tracking, you need to make sure youāveā¦
Recently, I was working on automating my personal finance workflows, like logging into my bank accounts and doing screen scraping of recentā¦
If youāre tired of relying on analytics platforms like Google Analytics that sell your data for their own financial gain, then Tinybirdā¦
If you are building a business that relies on subscriptions, like a software as a service (SaaS) app, you may have found that creating andā¦
Recently, Iāve got a Synology NAS to organize all my files in a single place. To my surprise, Iāve more than 5000 screenshots that Iāveā¦
Getting error when trying to run your Google Puppeteer script which is based on puppeteer-extra or puppeteer-core ? Well, it turns out weā¦
Pretty much all our apps will have form in one way or another. Building it manually from scratch is not a stright forward in most of the UIā¦
TLDR If the payload is empty. Then axios explictly ignores the āContent-Typeā even if we set it while making the request or an interceptorā¦
In a traditional Single Page Application, weāll be running two different servers for both API and UI which can be accessed via differentā¦
Iām building an personal finance app where Iām aggregating all financial transactions from all the bank/credit card statements. Recentlyā¦
Recently, I ran into a problem where I wanted to pass RegEx via api. The problem is that regular expressions are not JSON serializable. Soā¦
Setting up Sentry in a project is straight forward. We just need to install the Sentry client and configure it. Thatās it. Under the hoodā¦
At work, weāve started using Calendar Versioning for one of our projects. Weāve decided to use the following pattern for the version ā (UTCā¦
When weāre writing a custom script we need to make sure that weāre we need to make sure that our code runs properly in the shell in which weā¦
Interceptor in axios can be attached to a request or a response. And theyāre executed before or after every request and response globallyā¦
Sometimes, weāll need to filter date in while fetching data from Mongodb using mongoose. For example, letās say weāve a transaction schemaā¦
Basically, we can get the last day of a month by passing 0 as while intializing Date Hereās a quick example of it. Any Month Current Monthā¦
useQuery in react-query package is used to fetch data from api. By default, it gets triggered when the components gets mounted. Howeverā¦
Getting issue when connecting to your MongoDB using mongoose or some other ORM? Well, it turns out your password has @ or anotherā¦
Itās 2 AM. You just found a bug in the project which needs to be fixed before you meet your client tomorrow morning. You know what causingā¦
VS Code is build using Electron which means pretty much everything is build using web technologies that can be customized. Most of the timeā¦
Building forms is one of the tedious thing in developing web application. We have to think about lot of things like handling dataā¦
When we rise a new pull request in GitHub, the chances are it would choose as a base branch by default. But most probably, weāll have someā¦
Sometime we may need to access Vue router outside of the Vue instance. For instance, letās say that you want to show standard error messageā¦
Got stuck with sudden StoreStateProvider error while running any Gatsby command locally? Hereās how to fix it quickly: That should fix theā¦
Letās say you want to update slug (URL) for one of your blog post in Gatsby. Updating it is pretty straight forward. You just need to openā¦
Using Regex Using array split() method Reference Last segment of URL
Axios is a light weight promised based HTTP client for both nodejs and browser. Letās see how to handle 400 error message using it. What isā¦
Under the hood Gatsbyjs uses reach router for client-side routing. So we can pretty easily get the current route from any component inā¦
If youāre using mongoose library with serverless framework, then you might have run to the following issue Cannot overwrite model onceā¦
Let us suppose that youāve a customer model in mongoose and want to search multiple fields in it. Kind of like a search term that you canā¦
At the end of the day GraphQL is just an API end point in which we send the API request in a structured format and we the responseā¦
Whether youāre building youāre own personal finance app or some custom app that requires your bank transaction it is usually hard to get anā¦
Iāve always wanted to start my own startup since my eighth grade (2007). And after years and years of just fantasying Iāve finally takenā¦
I was playing around with prisma and had an issue in the post-deploy Basically, I was generating schema after the Prisma is deployed usingā¦
Lately, Iāve started getting a HTTP error when uploading some images/videos. Itās filesize/resolution is little bigger that might the causeā¦
Most common way of configuring AWS credentials in node are Environment Variable Load from a JSON file Updating your configurationā¦
Whenever we want to deploy a codebase to a server, we need to do lots of process like unit testing, linting, building, uploading it to theā¦
Just recently started using Visual Studio Code. Theyāve cool built-in features like Git & Debugger feature is awesome ? But the thing whichā¦
There are some scenarios when we want to prevent JavaScript from running inside of the iframe. Most common one Chrome/Safari extensionāsā¦
Letās say youāre building a cool e-commerce site which has wish list feature. When a user who is not logged in but adds a product to wishā¦
Chrome extension has different environment to perform different actions. Most common one are content script and background. Communicatingā¦
Hereās a little snippet on how to do it.
Hereās a little snippet of how to do it using react-router & react-redux
Hereās a little snippet on how to do it.
Hereās a little snippet of how to send an email using SendGrid pretty easily
Hereās a little snippet on how to do it
Search bar is the most important component that we would need in every projects. Lets see how to build a simple search component which youā¦
Whatās the first thing you see in e-commerce site before shopping ? Pricing ? Products ? Reviews & Recommendations ? Most of the time theā¦
Let say you want to automate your workflow. Like everyone you might search, ask your friends/colleague to give you some recommendationā¦
Uploading file is one of the most common thing in any web application. Letās see how we can do that in less than 10 lines of code. Inā¦
Weāll be using sendgrid to send email. Other than that all you need is SendGrid API key So in order add attachment we need to convert thatā¦
In this article, Iāll explain about how to upload a file using axios and redux-form First, you need to download required packages using npmā¦
In this tutorial, weāll see how to use custom components like react-select within redux-form. So the first thing we need to do is to createā¦
Setting up MongoDB is little tricky if you are using MAMP. You just need to spend little time to install few dependency and make few tweaksā¦
Squarespace makes it easy to build website pretty much without any technical requirement.We just need to drag and drop. And makeā¦
Last week I was setting up SSL for our upcoming product Better HQ - Feedback and bug reporting app. When I checked our API I noticed someā¦
While working on our latest project we needed to remove the query string from a URL. And store it in the database. Here how I did it inā¦
We often have a situation where we need to test whether the given string is a valid email address or not. Hereās a quick post on how to itā¦
In the root directory of the website we need to create htaccess file. And the configuration for it is given below
Hereās a quick post on how to select elements with the native HTML5 Selectors. Itās based on the Michal Wachowskiās gist And hereās how toā¦
In this quick post, we will see how to create a simple show more button in AngularJS. In the page View And in the container
There are various scenarios where we will need to execute a callback function just after the last element like attaching events to it orā¦
As we all know loaders are used to indicate some process is happening. Weāll see how to add spinner in Angular. In this article, we areā¦
AngularJS comes with many filters build-in which help us to develop apps without reinventing wheel.Today weāll see about how to formatā¦
Header section will most probably come on every page in the app. We can have it as a partial file and include it in the page using ngā¦
You might have found yourself in the situation where you need to get a domain name from a URL string. Letās say youāre building a Webā¦
CORS is a mechanism that allows resource like JS, CSS, etc. on a web page to be requested from another time. Almost every website will haveā¦
I donāt get it, it works on my machine ! As a developer, we all experience the situation. Most of the time. Let us see how we can solve thatā¦
Hereās little snippet on how to do it
In this post, Iām going to show you a quick and easy way to move/migrate your site from WPEngine to another host. In my case, Iām going toā¦
How do you search on StackOverflow? By Googling? Want to do it right from your terminal? Hereās a quick post on how to do so. Today I cameā¦
As a web developer, you might have experienced a scenario where you have to set source of image dynamically. For say, we get source an imageā¦
There will be times when we need to append class to body or other element when that particular page gets loaded. The other day, Iā¦
When we install packages using composser. It just basically creates a new directory called vendor and install all the packages in it. Mostā¦
I was playing around with my dotfiles and suddenly started getting __rvmcleansevariables every time I open Terminal. If you use Terminal allā¦
Whether youāre just getting started or have been building applications for years, improving your workflow helps you to stay more productiveā¦
Unlike Ubuntu, elementary OS does not seems to have setting to change the laptop lid close behaviour. By defaults system is gettingā¦
We know that almost every web pages in the web is dynamic which means the pages are generated in real-time. Content and Images can beā¦