CASE 01

PowerPay

Enterprise IoT payment platform for power, water and fees

Visit site →
PowerPay

Built the complete frontend for an enterprise SaaS platform managing 300+ IoT payment devices across distributed physical sites — from schema-driven forms to real-time dashboards.

My Role

Sole frontend developer. All UI architecture, design decisions, and implementation.

Tech Stack

Next.js 15, TypeScript (strict), React Query, Zustand, AG Grid Enterprise, Tailwind CSS

Delivered

3 portals (Admin, Business, End-User), 18+ entity CRUD flows, schema-driven form system, real-time dashboards

Key Highlights

  • Schema-driven form system — one rendering pipeline powers all 18+ entity forms with zero duplication
  • AG Grid Server-Side Row Model — enterprise data grids handling thousands of devices with server-side filtering and pagination
  • Multi-tenant architecture — 4-tier hierarchy with cascading access control and scoped UI
  • Three distinct portals — Admin, Business, and End-User, each with architecture matching its use-case
  • Real-time session monitoring — live device tracking with auto-refresh and revenue visualization
Next.js 15TypeScriptReact QueryZustandAG GridTailwind CSSStripeLeafletFirebase Auth
CASE 02

IOT Solutions Web Platform

Spec-driven AI development — architecture that ships production sites at speed

Visit site →
IOT Solutions Web Platform

Designed the architecture for a multi-site monorepo — static-first rendering, push-based ISR, and specs tight enough that AI implements production code on the first pass.

My Role

Architecture & technical lead. Authored all specs, made all rendering/caching/infra decisions.

Tech Stack

Next.js 16, Turborepo, React Server Components, Tailwind CSS, Supabase CMS, TypeScript

Delivered

3 production sites from one monorepo, 100% static output, webhook-driven ISR, multi-site CMS

Key Highlights

  • 100% static output — every route renders as pre-built HTML, zero server compute at request time
  • Push-based ISR — CMS publishes, webhook fires, affected pages regenerate in seconds
  • Spec-driven AI workflow — architecture decisions and .instructions.md files that constrain AI to produce correct code
  • Multi-site CMS — one CMS publishes to three consumer sites with independent revalidation
  • Graceful degradation — if CMS goes down, sites fall back to local MDX with no user impact
Next.js 16TurborepoRSCTypeScriptTailwind CSSSupabaseISRStatic-First

How I Work

I understand the business problem before writing code

I scaffold architecture for speed, then iterate on details

I communicate in plain language, not jargon

I ship working code, not endless specs

Next.jsTypeScriptTailwind CSSReact QueryNode.jsSupabaseTurborepo

Let's build something.