← Web Projects

Ostiara

May 2026 - Present

Ostiara screenshot

Project Overview

Role
Solo — full stack + design
Timeline
May 2026 - Present
Stack
Next.jsTypeScriptClerkSupabaseDesign Systems
Status
In progress

What I worked on

Everything end to end: the marketing site, an admin dashboard, and a teams-and-roles system built on Clerk Organizations with Supabase row-level security — all wearing a design system I built for it. The backend data model, the UI, and the copy in between.

The Challenge

The hard part wasn't the code — it was customer discovery. Talking to door-to-door reps surfaced a real split between fixed-price menus and measure-on-site quoting, and that split changes what the tool owes each group.

The process

  1. Customer discovery

    Interviewed door-to-door reps to learn how they actually quote a job on a doorstep.

  2. Data model & access control

    Teams and roles on Clerk Organizations, with Supabase row-level security drawing the boundaries.

  3. Admin dashboard

    The day-to-day surface managers and reps run the team from.

  4. Design system

    Built one for the product and wore it across every surface.

  5. Marketing site

    Shipped the public site and the copy around the product.

Ostiara — image 1
Ostiara — image 2
Ostiara — screenshot
Ostiara — image 3
Ostiara — image 4

Ostiara started as a platform for door-to-door sales teams across home-service verticals — pest control, solar, roofing, fencing, security — and I built the whole of it solo: the marketing site, an admin dashboard, and a teams-and-roles system on Clerk Organizations with Supabase row-level security drawing the boundaries. The data model, the interface, and the copy in between all wear a design system I built for the product.

The hard part wasn't the code. It was learning how a rep actually quotes a job on a doorstep.

The part that stuck with me wasn't the code. It was the customer discovery. Talking to reps who actually quote jobs on a doorstep surfaced a real split I hadn't planned for: some verticals price off a fixed menu, and others have to measure the site before they can quote at all. That one distinction changes what the tool owes each group — what a rep needs on the screen when a homeowner is standing right there.

So the build kept bending back to that split. Access control, the dashboard, the way a quote gets assembled — each decision had to hold for both the menu-priced teams and the measure-on-site ones, without forcing either into the other's workflow. The engineering was the straightforward half; keeping the product honest to how the work is really done was the rest of it.

Ostiara — wide screenshot
Ostiara — banner

Built solo, end to end — and still bending back to how the work is really done.