AlQasmi القاسمي
العربية Contact me
Work
For personal use

Tools I built for myself

Two systems I live on every day: the household budget and the car log.

I hold my own data to the same rule I propose to organizations: code decides, and the model helps without ever inventing a number.

Household budget

MB

Every expense is booked automatically, and I approve anything uncertain.

I built it to know where every riyal goes without manual entry. It brings bank text messages, bank emails and statements into one ledger.

  1. 1

    Captures every bank text message and saves it as is before any processing, so nothing is lost if a later step fails. Bank emails land in the same place without duplicates.

  2. 2

    Reads the message with fixed rules: amount, account, date and merchant. AI doesn't decide here: it can stop a booking when in doubt, but it can't change one.

  3. 3

    Anything uncertain reaches me on Telegram with buttons, so I book it or skip it with one tap, and any edit can be undone.

  4. 4

    I upload the statement, it reconciles it line by line against the entries, then I sign off the month and it locks.

  5. 5

    Every code change passes a 9-stage gate on a full staging copy before production.

Next.js PostgreSQL Node.js Qwen 3.8 27B Runs locally
MB interface: the budget dashboard with spending against forecast
Vehicle log

Tirs

My car log: fuel, service and documents, fed by the budget automatically.

I wanted a complete record for each car without entering anything twice. Fuel, car washes and service that MB books reach Tirs in one tap.

  1. 1

    When MB books a car expense, my Telegram assistant asks: which car? One tap logs it, and it asks for the odometer reading if it's fuel.

  2. 2

    Reads the bill with PaddleOCR-VL, Qwen 3.8 27B organizes it into line items, then it drops any amount not printed on the bill.

  3. 3

    Alerts me 30 days, 7 days and one day before documents expire, and predicts service dates from the distance I drive each day.

  4. 4

    Rejects an implausible odometer reading, like an extra digit that multiplies the distance tenfold. I added this after a real mistake.

Next.js SQLite PaddleOCR-VL Qwen 3.8 27B Runs locally
Tirs interface: the vehicles dashboard with car status and expenses

Let's build your organization an internal tool that works the same way

Contact me
Back toAll work