← Back to projects

Personal project · case study

StoreSign

Simple online ordering for small businesses — a multi-tenant SaaS where each shop gets its own storefront on its own subdomain (or custom domain on paid plans).

The story

I started StoreSign as a tiny project for my daughter — she wanted a simple way to take orders for her baking. What started as a single-tenant ordering page grew into a real multi-tenant SaaS as I worked through the architecture for "what would this look like if every small business could sign up?"

Today it's still very early — my daughter is currently the only active shop on the platform. The infrastructure is built to scale to hundreds of tenants the day there's demand for it. Built end-to-end in my own time using AI-assisted development.

What it does

  • Each shop gets its own storefront at yourshop.storesign.app.
  • Pro plans can attach their own custom domain (e.g. bobbiesbakeshop.com) with automatic SSL via Cloudflare for SaaS.
  • Built-in CRM — customer records, contact history, and notes per tenant.
  • Order management — orders flow into a dashboard with status, history, and email notifications to both shop and customer.
  • Tiered feature gates — free vs. paid plans unlock different capabilities (custom domain, advanced features, etc.), enforced at the tenant level.
  • Shop owners manage products, branding, and settings; customers browse and order without an account.
  • Each tenant's data is fully isolated — accounts, products, orders, and branding all scoped per shop.

How it's built

Backend

Node.js · Express · PostgreSQL

Frontend

React · Tailwind CSS

Auth

bcrypt · cookie sessions

Email

Resend

Hosting

Railway (server) · Cloudflare (DNS/CDN/SSL)

Multi-tenancy

Subdomain routing · Cloudflare for SaaS for custom domains

Hardening

Helmet · rate limiting · CORS

Built with

Claude / Anthropic SDK in the dev loop

Why I built it

I've spent over a decade on multi-tenant SaaS at FastField, so the platform patterns weren't new to me — tenancy, data isolation, plan gating, custom domain provisioning. What I wanted was to put my hands on every layer myself, without a team between me and the code, and validate that I could go from spec to shipped product on my own.

The things this project actually let me do:

  • Apply the multi-tenant SaaS patterns I knew well from FastField in a stack of my own choosing, end-to-end, in my own time.
  • Get hands-on with the Cloudflare for SaaS BYOC flow — the DNS verification and TLS issuance dance that makes custom-domain SaaS work. Solid to feel that pipeline concretely.
  • Validate how far AI-assisted development can carry a non-coding PM. Answer: surprisingly far, when paired with clear product specs and a willingness to actually read the code that comes back.
  • Feel firsthand the friction my engineers feel day to day — great way to keep my product instincts honest.

Status

Early.Live infrastructure, one active tenant (my daughter's shop), no public sign-up flow yet. I'll keep developing it as time and interest allow — there's something genuinely fun about a SaaS where the "customer count" is "family."

← Back to projects