Projects

Long-lived write-ups about real projects, system design decisions, and implementation trade-offs.

Melbourne Property Intelligence Dashboard

melbourne-property-intelligence-dashboard

A property management workspace for handling email, property records, and follow-up tasks, with AI analysis presented for human review.

  • Connected property records, mailbox activity, and follow-up tasks through a React interface and an Express REST API.
  • Implemented IMAP synchronisation, SMTP replies, attachment handling, and drafts.
  • Separated interactive requests, mailbox jobs, and AI analysis so long-running work has its own processing path.
ReactTypeScriptVite...

XiaoxingAI

xiaoxingai

A Gmail assistant that classifies and summarises email, sends Telegram notifications, and prepares replies for confirmation.

  • Built per-user Gmail polling with OAuth, configurable filters, and processed-message deduplication.
  • Separated classification and summarisation from Telegram message rendering using validated AI output.
  • Added reply confirmation, encrypted draft storage, expiry, and action logs.
PythonFastAPIReact...

Repo Context Kit

repo-context-kit

A CLI and MCP server that gives coding agents scoped repository context, task records, and explicit execution gates.

  • Published an npm package with a CLI and MCP server for repository context and task workflows.
  • Generated file and symbol indexes alongside structured task, execution, and verification records.
  • Added bounded JSON responses, schema validation, and scan freshness checks.
Node.jsJavaScriptESM...

iPokerPal

ipokerpal

An offline-capable poker session tracker for recording buy-ins, calculating settlements, and reviewing game history, with optional Firebase sync.

  • Built live session and quick-entry flows for players, buy-ins, chip counts, and settlements.
  • Kept core records local using SQLite, AsyncStorage, and persisted Zustand stores.
  • Centralised chip-to-cash conversion, profit, and ROI calculations in shared state actions.
React NativeExpo SDK 54TypeScript...

Personal System Site

resume-log-site

A personal site for project case studies, engineering notes, and a focused hiring view, with content maintained in the repository.

  • Built shared project pages around problems, implementation choices, results, and lessons.
  • Kept projects, notes, and current focus in a typed local content model.
  • Created a separate hiring view with work history, grouped skills, and selected project evidence.
Next.jsReactTypeScript...