Series

Building ZyVOP in Public

A running log of the real decisions behind ZyVOP — hosting migrations, stack choices, costs, and the mistakes that came with them. No polish, just what happened and what it cost.
8 articles Created Aug 2026
Building ZyVOP in Public

Articles in this Series

8 articles • curriculum order

Part 1

Why I Moved ZyVOP From Vercel to a VPS With Docker and Cloudflare Tunnel

Vercel was the obvious choice when I launched ZyVOP — until edge function timeouts started silently killing cross-posts. I moved the entire platform to a $8/month VPS using Docker and Cloudflare Tunnel in under 2 hours. Here's the exact setup, what broke, and the Cloudflare cache gotcha nobody warns you about.

Sanju SinghSanju Singh Aug 7 6 min read
Part 2

Why I Built a Developer Platform Instead of Just Using Dev.to

I used to publish everything on Dev.to. It worked, but I eventually realized I was building my content on someone else's platform. So I built ZyVOP—a developer publishing platform where I can keep the original article, distribute it to other platforms, and build the analytics and tools around it myself.

Sanju SinghSanju Singh Aug 10 4 min read
Part 3

The Real Cost of Running a Developer Platform

Most "cost of running my SaaS" posts hide the free tiers and skip the disasters. Here's every line item behind ZyVOP — including the Vercel timeout that was one slow API response away from silently killing cross-posts.

Sanju SinghSanju Singh Aug 11 5 min read
Part 4

How ZyVOP's Syndication Engine Works: Dev.to, Hashnode, Medium, and Bluesky

Cross-posting sounds simple until you try to build it. Every platform has different APIs, different formats, different quirks, and different failure modes. Here's the complete technical breakdown of how ZyVOP's syndication engine works under the hood.

Sanju SinghSanju Singh Aug 12 5 min read
Part 5

The SEO Strategy Behind ZyVOP: Why Cross-Posting Outward Beats Importing Inward

Most developer platforms treat content syndication as a two-way street. It isn't. Every piece of content you cross-post has a canonical URL, and that URL determines which domain gets the SEO credit. Here's the strategy behind ZyVOP's approach — and the bug that almost broke it.

Sanju SinghSanju Singh Aug 13 4 min read
Part 6

How We Built a Production Email Verification Pipeline That Saved Our Sender Reputation

Invalid emails can destroy your sender reputation. We built an 8-step NestJS verification pipeline with regex, MX checks, disposable/role filters, SMTP probing, greylisting retries, catch-all detection, and 24-hour caching with auto cleanup. Here’s the architecture and key lessons.

Sanju SinghSanju Singh Aug 15 9 min read
Part 7

I Built a System That Cross-Posts to 5 Platforms With One Click — Here's How

built a cross-posting engine that publishes to 5 platforms with a single click. This post covers the adapter pattern architecture, HTML-to-Markdown conversion quirks, platform API inconsistencies (GraphQL, REST, AT Protocol), JSONB error persistence, retry mechanisms, and canonical URL strategy for SEO.

Sanju SinghSanju Singh Aug 16 10 min read
LatestPart 8

Building Production Subscriptions with Razorpay: Webhooks, Signatures, and Edge Cases

Integrating Razorpay into a modern TypeScript backend is full of undocumented landmines: flipped HMAC arguments between orders and subscriptions, Fastify body parser mutations that break webhook signatures, and strict RBI recurring mandate failures. Here is how we engineered a resilient, dual-mode billing engine in NestJS and Fastify.

Sanju SinghSanju Singh Oct 5 8 min read

Actions

Overview

Total Articles8
CreatedAug 2026
Last UpdatedAug 2026

Contributors

Sanju Singh
Sanju Singh
@sanjay687