Skip to content

Lode

Mobile-first cockpit over the per-project notes every one of my repos keeps in git — read every project's state at a glance, groom the backlog with your thumb, capture ideas from the phone.

Private RepositoryLive Demo
LodeScreens coming soon

About the Project

Every project I run keeps its own written memory in the repo alongside the code: a current-state snapshot, a backlog, a decision log, and a running session history. The discipline works, but only at the desk — each project is an island, and ideas that arrive away from the laptop have nowhere to go.

Lode is the layer above all of them. It reads the notes where they already live, in plain markdown in git, and turns them into one cross-project view: an Expo app for capture and grooming on the phone, and a Next.js desktop surface for the wide view. No new file format, no export step, no hosted backend.

Core Features:

  • One card per project: state at a glance, backlog counts, and a staleness chip that makes the neglected project obvious
  • Backlog cockpit — promote, demote, complete, and archive items from the phone; every change is batched into a real commit on the project's own repo
  • Idea capture that files into the right project's inbox and holds it in a local outbox until delivery succeeds
  • A queue that survives the app being killed mid-edit, then replays on next launch
  • Desktop dashboard reading the same vaults straight off local disk

Technical Architecture:

  • Expo SDK 56 / React Native 0.85 / React 19 / TypeScript strict, Expo Router with native tabs
  • Platform-pure parser core shared verbatim between phone and web — a line-faithful markdown document model that applies edit operations without reformatting the file around them
  • GitHub REST contents API as the phone's transport: repo discovery by probing, per-project reads, and batched write-back commits
  • Filesystem provider on the web side, mirroring the GitHub provider field-for-field so both surfaces emit identical data
  • Next.js 15 App Router desktop surface importing the mobile parsers directly via an aliased external directory — one implementation, two runtimes
  • Material 3 design system with semantic surface slots: native Material You on Android, an Apple system palette on iOS, and a seeded fallback scheme elsewhere

Engineering Highlights:

  • Designed the write path around append-and-move on the original lines rather than re-serializing parsed structures, so Lode's commits stay reviewable as diffs
  • Persisted pending operations per repo so a dropped connection degrades into a replay instead of a lost edit
  • Stale-while-revalidate loading with an explicit live/cached indicator, so the app is never silently showing you old data
  • Built the app on top of its own convention — the project's notes are maintained in the same format the app consumes

Tech Stack

ExpoReact NativeTypeScriptExpo RouterNext.jsGitHub APIReanimatedMaterial 3