Some of it is client work. The rest we built for ourselves. Property portals, student platforms, a fitness tracker, a margin diagnostic for online brands, and the automation that runs a salon’s bookings and a law firm’s intake.
01
[ PropTech · Property mgmt ]
Chirinda Rentals
A private portal that runs a rental portfolio.
Runs a family rental portfolio end to end. The owners and the manager each get their own dashboard. Billing and invoices go out monthly on their own, rent is tracked as it lands, and income sits next to expenses. It installs on a Mac or an iPhone like an app, because it is one.
02
[ Native iOS · Student platform ]
UNI360
Student living, run from the phone.
Rent and payments, safety tools, campus utilities, in a native iOS app for students and tenants. The animation and the detailing carry a lot of it: it should feel finished in the hand, not just complete on a feature list.
- React 19
- Capacitor
- Tailwind
- Framer Motion
03
[ Automation · WhatsApp booking ]
Salon Workflow
A booking taken end to end inside WhatsApp.
South African salons already take bookings in WhatsApp threads, so that is where the booking happens. Pick a service, pick a time, pay the deposit on a link, without ever leaving the chat. The interesting part is not the booking. It is the slot that hands itself back when nobody pays, the reminder that stops the moment a client cancels and the no show that quietly puts someone on deposit next time.
- n8n
- WhatsApp Cloud API
- Postgres
- Docker
04
[ Automation · Legal intake ]
LexAssist
A legal intake that runs itself, until it needs a lawyer.
A client describes what happened over chat, the way they would already message a firm on WhatsApp. LexAssist asks for the employer, the date, the reason given, then the letter, and never once tells the client what any of it means legally. The interesting part is not the chat. It is the lawyer’s screen updating in step with it: a summary marked as an AI draft, a confidence score that only rises as real answers arrive, and an urgency flag that fires the moment a dismissal is recent enough to escalate.
05
[ Student life · Web app ]
CampusCompanion
Campus life, managed in one place.
Timetables, tasks and the rest of campus life in one place, built for the phone first. Accounts are secure and everything syncs, so it is the same app whichever device a university student picks up.
- React
- TypeScript
- Tailwind
- shadcn/ui
- Supabase
06
[ E-commerce · Profit analytics ]
Ventura Decision Systems
Find the margin you’re bleeding.
Revenue is easy to see. Contribution margin, per product, after ad spend, is not. This rebuilds it for founder-led DTC brands out of the sales and ad-spend exports they already have, however messy those are. Four deterministic layers, then a verdict on every SKU: kill, reprice, reallocate, protect or watch. One report and a strategy call, inside 14 days.
- Next.js
- Python
- Modal
- AWS
- Paddle
07
[ Student housing · Marketplace ]
NearCampus
Find student digs the way students search.
South African students look for a room by campus, so that is where the search starts. Pick a university, compare the rooms, message the landlord yourself. The listings are structured on live market research, not guesswork.
- React
- Vite
- Tailwind
- React Router
08
[ Health & fitness · Native iOS ]
SabeloFit
Log the lift, not the friction.
Built for one user, so nothing had to be compromised for anyone else. Sessions, weight progression, and a library of 1,300+ movements with GIF demos, all of it sitting on the device. No accounts, no cloud, no signal needed at the gym. The navigation is gestural and the transitions settle rather than snap, built around how the thing actually gets used in a gym.
- React Native
- Expo
- TypeScript
- SQLite
- Offline-first