When building side projects or indie web applications, one of the biggest risks is infrastructure creep.
You start with a simple idea, add a PostgreSQL database, spin up an AWS ECS container for background processing, set up Redis for caching, and suddenly you are paying $80/month in cloud infrastructure before acquiring your first 100 users.
A few weeks ago, I challenged myself to build Omnikite — a massive web platform with 80 high-utility tools (PDF processing, cryptography, formatters, image minifiers, financial matrices) — with $0 in ongoing backend compute costs.
Here is how the architecture works and what I learned.
1. The Strategy: Shift 100% of Compute to the Client
Traditional utility websites process files on their own servers:
- User uploads a 10MB PDF $\rightarrow$ Server downloads $\rightarrow$ Server runs Python script $\rightarrow$ Server uploads to S3 $\rightarrow$ User downloads result.
This architecture has three fatal flaws for an indie founder:
- Server CPU costs scale with traffic.
- Bandwidth egress costs eat into your margins.
- Handling user files creates severe GDPR/privacy liability.
Instead, we built every single utility to run directly in the user's browser using:
- WebAssembly (WASM) for binary parsing and PDF manipulation.
- Web Crypto Subtle API for SHA-256, HMAC, and PBKDF2 hashing.
- Canvas 2D API for image compression and format conversions.
- Pure JavaScript / TypeScript state for real-time mathematical modeling.
2. Zero-Database Architecture with Static Generation
Omnikite uses Next.js 16 (App Router) with Static Site Generation (SSG).
All 99 routes (80 tool pages + 12 category directories + home + tools directory) are pre-rendered into static HTML at build time.
- Hosting: Deployed on Vercel's global Edge CDN.
- Time to First Byte (TTFB): Under 25ms worldwide.
-
Database Maintenance: None. User favorites and recents are stored locally in the user’s browser using
useSyncExternalStoreandlocalStorage.
3. SEO-First Schema Engineering
To compete with legacy utility websites on Google Search, we implemented a 4-layer structured data schema across every page:
-
WebApplicationSchema: Informs Googlebot that the page is an interactive web tool. -
BreadcrumbListSchema: Generates clean search snippet hierarchy. -
FAQPageSchema: Qualifies the page for Google rich result FAQ dropdowns. -
HowToSchema: Step-by-step instructional cards that appear directly on Google search results.
4. The Results
- Active Tools: 80 Flagship Utilities across 12 domains.
- Performance: 100/100 Google Lighthouse across Desktop & Mobile.
- Monthly Cloud Bill: $0.00.
If you want to explore the platform or see the UX in action, check it out here:
👉 https://omnikite.vercel.app
What side projects are you building right now? Have you considered moving parts of your backend into client-side Web Workers or WASM?
Top comments (0)