Practical Information for Readers
The DeelCart Blog provides practical information, tutorials, explanations, and guides designed to help readers understand technology, software, online learning, and useful digital resources.

Hardening Your Nginx Reverse Proxy: Implementing Essential Security Headers for Next.js Apps
My Nginx reverse proxy worked fine functionally but scored an F on a security headers scan. Here's what was missing and how I fixed it properly.

Handling Infinite Scroll and Lazy-Loaded Content Reliably in Playwright
My scraper only ever captured the first page of results on sites with infinite scroll. Fixed delays didn't fix it reliably. Here's what actually works.

Setting Up a Swap File on a Low-Memory Linux VPS to Prevent Node.js Out-of-Memory Crashes
One of my apps kept dying with no error, just gone. Turned out the OOM killer was ending it. Here's how a swap file fixed it for good.

How to Configure Custom Log Rotation for PM2 to Prevent VPS Disk Storage Bloat
PM2 logs every line your apps print, forever, by default. I found that out the hard way when one server ran out of disk space. Here's the fix.

Automating Cross-Posting to Social Media with Puppeteer
I built a script that finds new content and posts it across several social platforms automatically, without getting flagged or rate-limited.

Detecting and Recovering From a Cryptomining Compromise on a VPS
My server's CPU usage spiked for no reason I could explain. Here's how I confirmed it was a cryptomining compromise, shut it down, and locked the server...

Building a Dynamic RSS Feed From a Database in Next.js
One of my RSS feeds sat broken for months, pulling from the wrong data entirely. Here's how I rebuilt it to read live from the database instead.

Handling Slug Collisions in an Automated Content Pipeline (MongoDB E11000 Errors)
My import pipeline throws duplicate slug errors regularly. Here's why that's the system working correctly, and how I handle collisions properly.

How I Automatically Check Thousands of Time-Sensitive Listings for Expiration
Some content goes stale on its own — a deal expires, a link dies, an offer gets pulled. Checking that by hand across thousands of listings isn't possible

Automating IndexNow Submissions So New Pages Get Indexed Faster
I publish and update content daily on a site with 1,500+ pages. Manually submitting URLs to search engines isn't realistic at that pace — so IndexNow sub..

Building a Smart Internal Linking System for a Large Content Site (1,500+ Pages)
I run a site with over 1,500 pages of content. Manually adding internal links to every one isn't realistic — so I built a system that does it automatically

How to Host Multiple Next.js Apps on One VPS with PM2 and Nginx (Without Port Conflicts)
I run four separate Next.js sites off one DigitalOcean droplet. Here's exactly how PM2 and Nginx are set up to keep them from fighting over the same port.