david kimani
Work with me

02 / Work

What I have built

Seven years of production web applications. Two are written up in depth, for engineers. The rest are listed plainly, so you can see the range.

In depth

One hard problem each: why the obvious approach fails, what I chose instead, and what I would change.

  • Property · payment allocation

    rentiQ: allocating rent without guessing

    How a rent ledger stays explainable after partial payments, overpayments and corrections: allocation as rows, arrears first, and reversals that add records instead of editing them.

  • Property · data model and authorisation

    REMS Global: one data model, three audiences

    An agency, its landlords and their tenants each mean something different by "my portfolio". How to give all three a view of the same records without building three products that disagree.

Everything

One line per system. Where a client is not named, the description stays specific.

  • rentiQ

    The studio's own product: property management SaaS for Kenyan landlords and agents, with leases, monthly invoicing, payment allocation, gapless receipts and arrears reporting.

    Laravel · Inertia · Vue 3 · Vuetify · MariaDB

    Write-up → Live product ↗

  • Regulatory operations platform Client not named

    Training, site assessments and shift rostering for a national regulatory authority responsible for site assessments and mandatory workforce certification, where a training booking is refused if its people are rostered on or its instructor or room is taken. Built through my studio, which supports it under SLA.

    Laravel · Inertia · Vue 3 · Vuetify

    Case study on kimcardtechnologies.com ↗

  • REMS Global

    Property platform for a real estate agency, with one view of the portfolio for agency staff, a self-service view for landlords and maintenance requests for tenants.

    Laravel · Inertia · Vue 3 · PostgreSQL

    Write-up → Live site ↗

  • Nilltech Solutions

    Marketing site and structured project intake for a technology services firm, with a lead dashboard and acknowledgement emails behind it.

    Laravel · Vue 3 · Tailwind CSS · PostgreSQL · Resend

    Project details →Live site ↗

  • Clinic operations platform Client not named

    Booking and billing for a multi-location therapy practice, where every appointment is checked for clashes, priced and its commissions calculated as it is booked. Built through my studio and handed over.

    Laravel · Vue 3 · PostgreSQL · Africa's Talking · Resend

    Case study on kimcardtechnologies.com ↗

  • Kimcard operations platform

    The studio's own CMS, CRM, invoicing, client portal and monthly SLA reports, plus the incident pipeline that turns monitor alerts into tickets.

    Laravel · Inertia · Vue 3 · Vuetify · MySQL

  • Error and heartbeat agents

    Two small packages, for PHP and for JavaScript, that report errors and scheduled-job heartbeats from client applications into that incident pipeline. This site runs one.

    PHP · TypeScript · Nuxt

  • kimcardtechnologies.com

    The studio's site: services, pricing, a booking flow that lands in the CRM, and a company blog served from the same CMS.

    Nuxt · Vuetify · TypeScript

    Live site ↗

  • davidkimani.dev

    This site. Server-rendered from the same CMS, with the CV generated as an ATS-safe PDF from the data the /cv page renders.

    Nuxt · Vuetify · TypeScript

  • LaraVue Kit

    A Laravel and Vue starter kit, sold under my own name. The full source is yours when you buy it.

    Laravel · Vue 3 · Vuetify

    Kits →