[ Selected work ]

Things we’ve built

The websites, apps and automation we’ve shipped for clients and for ourselves.

Projects
08 in the catalogue
Platforms
Web · iOS · PWA
Stack
React · Supabase
Based
Pretoria, South Africa
[ The catalogue ]

Eight builds

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.

  • React
  • Supabase
  • Vercel
  • PWA
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.

  • n8n
  • WhatsApp Cloud API
Prototype View the demo
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
Prototype
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
In development
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
Prototype
[ The studio ]

Two people, full stack

Small on purpose. You work directly with the people writing the code, not an account manager or a middleman.

Northbound IT is a two-person software studio in South Africa. We design, build and run web and mobile products end to end, from the first sketch to the servers that keep them online.

The same people who scope your project build it, and answer when something needs to change. Nothing gets lost in a handover, because there isn’t one.

Team
Two builders
Based
Pretoria, South Africa
Model
Design → Build → Run
Work
Clients and our own products
[ Capabilities ]

What the work covers

01

Websites

Marketing sites for local service businesses. Quick to load, easy to find, and set up so a visitor can become an enquiry.

02

AI & Automation

Lead capture, follow-up and the back-office jobs that repeat, handed to software that never skips a step.

03

Property & PropTech

Portals for owners and tenants, billing and invoicing, rent tracking, and the whole portfolio’s numbers in one view.

04

Native iOS

iOS apps built with Capacitor and React. Fast, animated, and finished to the standard the App Store expects.

05

Web Apps & PWAs

One codebase that installs on a Mac, installs on an iPhone, or just runs in the browser, and keeps working when the signal drops.

06

Auth & Cloud Data

Email sign-in, roles that decide who sees what, and data that syncs live. Supabase and Vercel underneath.

[ How we work ]

Scope. Build. Ship. Run.

A short path from idea to something live, with a studio that stays after launch.

01

Scope

We map what you actually need and cut what you don’t, so the first version ships instead of stalling.

02

Build

Design and engineering happen together. You see working software early and often, not just mockups.

03

Ship

We deploy to real infrastructure: Vercel, Supabase, the App Store. You get something live, not a demo.

04

Run

After launch we keep it online, watch how it gets used, and keep it moving. Going live is the start of the job, not the end of it.

[ Start here ]

Let’s build yours

Tell us what you’re trying to ship. We’ll scope it, build it, and still be here after it launches.