Skip to content

In development

Capital Mind

One calm dashboard for every investment, policy and renewal date — net worth over time, allocation drift, and reminders before premiums are due.

Role
Design & engineering
Timeline
[n] weeks
Year
[2024]
Stack
React, Ruby on Rails, PostgreSQL

(01)The problem

Family finances live across a dozen apps, spreadsheets and paper policies.

Nobody notices allocation drift or an upcoming premium until it is too late.

(02)My role

  • Designed a double-entry-inspired data model for holdings, transactions and policies.
  • Built the dashboard: net-worth timeline, allocation breakdown and renewal calendar.
  • Added CSV import with mapping presets for common brokers.

(03)Architecture

A Rails API owns a ledger-style schema where every change is a transaction, so any historic net-worth figure can be recomputed. The React client renders time-series and allocation views from pre-aggregated snapshots.

  1. 01

    Import

    CSV / manual entries with mapping presets

  2. 02

    Ledger

    Transactions → holdings, append-only

  3. 03

    Snapshots

    Nightly roll-ups for fast charts

  4. 04

    Reminders

    Premiums, maturities, rebalancing

Ledger, not balances

Storing transactions rather than balances makes history auditable and every chart reproducible.

(04)Tech

Frontend

  • React
  • TypeScript
  • D3 / charts

Backend

  • Ruby on Rails
  • PostgreSQL
  • Sidekiq

(05)Outcome

[Who uses it and what it replaced.]

accounts unified
12+
missed renewals since launch
0
min to a full monthly review
<5

Next case study

UpOwl

Multi-region uptime & cron-job monitoring