01/Shopify SaaS · Profit analytics
Nette Profit Analytics
A Shopify store’s real net profit, order by order.
- Role
- Product, full-stack development, infrastructure and publishing, solo
- Period
- Mar – Oct 2026
- Status
- Published on the Shopify App Store
Private code — demo on request. The repository is private. I am happy to demo the app on a call or in an interview.
Ask for a demo- OAuth / API connectors
- 12
- lines of TypeScript
- ~45 k
- test files
- 41
- App Store launch
- Oct 12, 2026
Context
On Shopify, revenue is shown everywhere and margin almost nowhere. A store pays for products, shipping, payment fees, campaigns across several ad platforms and fixed costs, and no single view brings it all together.
The problem
Bring scattered data (Shopify orders, spend from 8 ad platforms, costs from 4 carriers) into one reliable cost model, recompute it continuously and make it readable inside the Shopify admin, without ever exposing a merchant’s data.
What I did
- Product design, cost model and onboarding flow.
- The whole application: Polaris front end, server rendering, API, jobs, database.
- Production infrastructure, CI and backups.
- Submission and publication on the Shopify App Store.
- FR/EN promo videos rendered from code (Remotion).
Architecture & technical choices
- 01
React Router 7 SSR inside the Shopify admin
Embedded through App Bridge and Polaris, server-rendered, wired to the Admin GraphQL API. A first Express + Vite version (March 2026) served as a prototype; v2 was rewritten in end-to-end TypeScript.
- 02
12 connectors behind one interface
8 ad platforms (Meta, Google, TikTok, Bing, Pinterest, Snapchat, Reddit, X) and 4 carriers (ShipStation, Shippo, Sendcloud, EasyPost) over OAuth or API. Syncs run through a pg-boss job queue backed by PostgreSQL.
- 03
AI with guardrails
The assistant uses Claude with Zod-typed tools. Each question has a cost and call budget, and the model only sees aggregated metrics, never raw customer data.
- 04
Hand-built, hardened infrastructure
A VPS running Docker Compose: PostgreSQL on an encrypted volume (LUKS), Caddy with HTTPS/HSTS, pg_dump backups encrypted with age, a /healthz endpoint. GitHub Actions CI on Node 22 and PostgreSQL 17.
Highlights
- Profit computed per order, cost by cost.
- Monthly P&L, profit-based LTV cohorts and a what-if simulator.
- Bilingual FR/EN interface and emails.
Stack
- TypeScript
- React 18
- React Router 7 (SSR)
- Shopify App Bridge
- Polaris
- Admin GraphQL
- Prisma
- PostgreSQL 17
- pg-boss
- Zod
- Recharts
- Anthropic SDK
- Vitest
- Docker Compose
- Caddy
- GitHub Actions
- Remotion
Gallery (8)
Screenshots taken from demo stores, with fictitious data. Select an image to enlarge it.