Skip to content
All work

03 / Property maintenance · Client project

Locafix

A leak, a broken lock, a dead boiler: every repair involves four people and a dozen calls. Locafix puts them all on the same page.

Role
Lead full-stack engineer, end to end
Period
Jul → Oct 2026
Platforms
Website · Web app · iOS · Android · Back-office
Not yet released
Locafix cover: the manager dashboard, the public website and the tenant mobile app
100%
Google SEO checks passed
100%
Google best-practice checks passed

01 / The context

Why it exists

Property managers look after hundreds of homes and a constant stream of repairs. Today that runs on phone calls, emails and spreadsheets: find a tradesperson who is qualified, insured and nearby, send them the door code, chase the quote, then the report.

Tradespeople often work in basements and stairwells with no signal, so reports get lost or typed up hours later. Tenants call to ask when someone is coming. Owners have no idea what was done. And when something goes wrong, nobody can prove who did what, when.

Locafix exists to replace that chain of calls with one shared record of every job.

It comes as a whole product: a website with a page for each audience, a web app for managers, one mobile app for tradespeople, tenants and owners, and a back-office for the Locafix team.

02 / The people

Who it's for

  • Property managers

    Create a job, find the right tradesperson fast, and see at a glance what needs a decision today.

  • Tradespeople

    Get the job details and access codes on their phone, and close the job on site, even with no signal.

  • Tenants and owners

    Report a problem easily and see when someone is coming and what was done.

  • Admins

    Only let in insured, verified tradespeople, settle disputes and have proof of every step.

03 / The goal

What it had to do

  1. A website that tells each audience, in their own words, what Locafix does for them.
  2. One timeline per job that every party sees and trusts.
  3. A mobile app that works in places with no network.
  4. Each agency's data kept strictly separate.
  5. Only verified, insured tradespeople on the platform.

04 / My part

My role

I worked on every part of Locafix: the brand and the website, the web app for managers, the mobile app, the admin back-office, the API, the database and the servers. I took each feature from the data model to the screens, on web and mobile.

05 / The approach

How I built it

  1. Model the job first

    Write down every step a repair goes through, and who can move it forward, before building any screen.

  2. A space for each role

    A website page for each audience; managers on the web; tradespeople, tenants and owners on mobile; admins in a back-office. Seven roles, one product.

  3. Design for the basement

    Build the tradesperson's app to work offline first, and sync when the signal comes back.

  4. Audit and harden

    Run a security review and move the most important rules into the database itself, so a bug in the app can't break them.

  5. Ready to run

    Repeatable server setup and deploys, so the product can go live and be updated safely.

06 / Key features

What I built

A website for each audience

One page for managers, one for tradespeople, one for tenants and one for owners, each showing what Locafix changes in their day.

Locafix home page: Gérez chaque intervention. Sans perdre le fil.Tradesperson page: Vos missions en poche, même sans réseau.

What needs a decision, first

Managers open on what's waiting for them: jobs to assign, reports and quotes to approve, open emergencies. Then every job, filtered by trade, property, urgency and status.

Manager dashboard with an act-now panel, mission and billing figures and a spending chartGrid of mission cards with trade, property, tradesperson, urgency and status

The right tradesperson, ranked

When a job is assigned, verified tradespeople are ranked by trade, area, rating, workload and the agency's favourites. AI can refine the order, with a plain ranking whenever it isn't available.

Recommendation card ranking three tradespeople with ratings and match percentages

Closing the job with no signal

Tradespeople get access codes and job details on their phone, and file their report with photos, time spent and materials on site. It syncs as soon as the network comes back.

Tradesperson app filing an intervention report offline, with before and after photos

Tenants report in 30 seconds

A tenant scans the QR code for their home, describes the problem to an assistant that turns it into a job, and follows every step without calling anyone.

A QR code and the tenant app showing their home and their reports
Mobile screen with planned visit, intervention details and a status timeline

Every step dated, every action traced

Each job moves from created to validated on one timeline that managers, tenants and owners all see, and every step records when it happened and who did it.

Job history timeline from created to validated with a date for each step

Quotes, invoices and inspections

Quotes are approved before work starts and invoices are tied to the job, with PDFs generated for both. Move-in and move-out inspections are done room by room, signed on site, and AI compares the photos.

Quote for a leak repair with lines, total and an accepted statusRoom-by-room inspection checklist with signatures from both parties

A back-office built on proof

Admins check each tradesperson's insurance and company documents before they can work, with reminders before they expire. They settle disputes with evidence, export the data and browse a history no one can edit.

Admin dashboard with providers to validate, disputes and key figuresAudit trail table listing actions, entities, actors and timestamps

07 / Key decisions

The hard parts

One timeline everyone can trust

The challenge

A repair touches a manager, a tradesperson, a tenant and sometimes an owner. Each had their own version of where things stood, and none of them could prove it.

What I did

I defined the life of a job once: created, assigned, accepted, in progress, closed, validated. Every app follows the same rules, and every step is stamped with a time and the person who did it.

If two people update the same job at once, one gets a clear message instead of silently overwriting the other.

What it changed

Managers, tenants and owners see the same timeline, and it doubles as proof when a dispute comes up.

Closing jobs where there's no signal

The challenge

Tradespeople finish jobs in cellars and stairwells. If the app needs a connection, the report waits until later, or gets lost.

What I did

The app saves every report, photo and time on the phone first, encrypted, then sends it when the network returns. Each report carries its own ID, so sending it twice never creates a duplicate.

It retries whenever the app opens or the connection comes back, because a phone can say it's online when it isn't.

What it changed

Tradespeople close the job before they leave the building, and the manager gets the report as soon as they're back in range.

Trust built into the database

The challenge

Many agencies share the platform, and a single mistake in the code could show one agency's homes, door codes or jobs to another.

What I did

I moved the separation into the database itself: each agency can only ever read its own rows, whatever the app asks for. The history of actions can be added to but never edited, and door codes are encrypted.

Tradespeople stay on hold until an admin checks their insurance and company documents, and get reminders before those expire.

What it changed

Agencies can trust that their data stays theirs, and every action on the platform leaves a record no one can rewrite.

The right tradesperson, suggested

The challenge

For every job, a manager has to find someone qualified, insured, nearby and available, usually by scrolling through contacts and making calls.

What I did

When a manager assigns a job, Locafix ranks the verified tradespeople by trade, area, rating, current workload and the agency's favourites. AI can refine the order, and the plain ranking takes over whenever AI isn't available.

What it changed

Managers pick from a short, ranked list instead of scrolling through contacts and making calls.

08 / The result

What it changed

  • For property managers

    One dashboard showing what needs a decision now, ranked tradespeople for every job, and a dated record of everything that happened.

  • For tradespeople

    Job details on their phone and reports closed on site, signal or not.

  • For tenants and owners

    They report a problem in the app and follow it step by step, instead of calling to ask.

  • For admins

    Only verified, insured tradespeople get in, disputes come with evidence, and each agency's data stays separate by design.

Built with

  • Next.js
  • React
  • Expo
  • React Native
  • TypeScript
  • Bun
  • ElysiaJS
  • Prisma
  • PostgreSQL
  • SQLCipher
  • Gemini
  • nginx

How I work

Built with an AI-agent workflow I designed: Claude Code agents working on web and mobile in parallel, with every change reviewed and merged through a pull request.