← All work
Case study · Client product · Built end to end

Mark My Zone

A production property management platform that replaced a real estate firm's spreadsheets, then learned to predict repairs before they happen.

Mark My Zone · insights
Portfolio insights
Rent collected vs expected · last 6 months
85%Occupied
94%Collection
3At risk
Collected Expected
Product Predictive analytics Full stack, AI assisted Next.js · Supabase
170+
Properties in production
50%
Operational time saved
9
Repair types forecast
0→100
Risk score per flat
The story

A real estate firm was running an entire rental portfolio of 170+ flats out of spreadsheets. Rent, leases, tenants, owner payouts and repairs all lived in separate sheets that only one or two people fully understood.

Lease renewals slipped. Rent went uncollected because nobody had a single view of who had paid. Repairs were always reactive, a call came in only after something had already broken. The team spent more time feeding the spreadsheets than managing the properties.

So I sat with the people doing the work, scoped what actually slowed them down, and built the whole product end to end on Next.js, TypeScript and Supabase. Here is what it became.

Every screen below uses representative demo data, never real client records.

One place to run the portfolio

The home screen answers what a property manager asks every morning. How much rent is in, what is overdue, what is sitting empty, and what is quietly costing money.

Everything that used to live in scattered sheets now shares one live view, with nothing left to reconcile by hand.

Mark My Zone dashboard with portfolio KPIs, collection rate, quick actions and recent activity

The portfolio explains itself

Below the headline numbers, the data tells its own story. Collection trends, the occupancy mix, and the repair categories quietly eating the budget.

Every empty flat shows the revenue it is losing while it sits vacant. The information was always there. This finally makes it legible.

Portfolio insights with rent collection chart, occupancy donut, top repair categories and vacancy revenue impact

Analytics anyone can read

A dedicated analytics view turns months of operations into trends, not tables. Punctuality per flat, collection over time, and where maintenance spend really lands.

It is built for the owner who wants the health of the portfolio at a glance, without asking anyone to pull a report.

Analytics screen with occupancy, collection, repair and punctuality charts

Then it starts predicting

This is where it stops describing the past. The engine turns the firm's own repair history into a forecast, and a single risk score from 0 to 100 for every flat.

Each category has a rhythm. AC roughly every six months, plumbing closer to nine, a geyser about a year. Once a flat has its own history, the engine learns that flat's real interval and adapts.

At a glance: how many flats are at risk, what is overdue, and the cost likely to land in the next ninety days.

Predictive maintenance overview with at-risk flats, overdue services, a 90-day cost forecast and learned service intervals

Down to the single flat

Open any flat and it lays out the per category forecast. What is overdue and by how many days, what it is likely to cost, and the history behind the call.

Reactive maintenance becomes a planned schedule. The team fixes the riskiest units first, before a tenant ever has to call.

Expanded flat showing per-category maintenance predictions with days overdue and recent repair history
The result

The spreadsheets are gone. The team runs the whole portfolio from one dashboard, and the work that used to eat their week is roughly 50% faster.

The predictive layer changed the business from reactive to proactive. Instead of waiting for a breakdown, the team sees which flats are at risk and what the next ninety days will cost.

It shipped to production and runs as the firm's internal operations tool. Because it holds private tenant and owner data, it is not publicly accessible, which is why the screens above use representative demo data rather than real records.
Tech & tools
Next.js TypeScript Supabase (Postgres, Auth, RLS) Recharts PWA Vercel PDF & Excel export Claude Code (AI assisted build)

Shipped as a production progressive web app, built by directing AI coding tools across the full stack.

My role
  • Ran the discovery and user research with the client, and scoped requirements into a buildable product.
  • Owned the product end to end: data model, feature set, UX, and delivery to production.
  • Designed and built the dashboard as an AI assisted full stack build on Next.js and Supabase.
  • Conceived and implemented the predictive maintenance engine: the interval learning, risk scoring and forecasting logic.

Want the full walkthrough?

Happy to demo Mark My Zone live and talk through the product and the predictive engine in detail.