work

Sixty-four repos, one thread: what my GitHub history says about how I work

I read all 64 public repos as one career: COVID-era hackathon bots, NTU research games, then a 2026 run of on-device Mac AI — macwispr, voice-evolve, a 4.73B MoE trained on a Mac Studio, and the reverse-engineered Cursor API.

Sixty-four repos, one thread: what my GitHub history says about how I work

I pulled my own GitHub history recently — all 64 public repos, from 2019 to now — and read it like someone else's career. The thread is clearer from the outside: I keep building the same few obsessions at higher and higher fidelity.

2019–2021: first repos, first instincts

  • python-file-encryptor, PYDownloader (a YouTube audio/video downloader) — utility scripts from the JC era
  • Immigrant-TechnologiesCOVID second-wave hackathon project: FindPatients.in, a Telegram bot + Flask + MongoDB stack that helped people find hospital resources in India when the system was overwhelmed. Real stakes, real users
  • Nano-mixer, flutter_learn, bbdcbot — early web/mobile experiments

The pattern showed up immediately: build something that does one useful thing, ship it, move on.

2022–2023: NTU and research-adjacent work

  • URV — Unified Real-estate Viewer (C++)
  • kwgKids with Grids: migrated a psychology GridSearch game to the web for NTU CLIC (Center for Lifelong Learning and Individualized Cognition), based on the Schulz/Wu/Ruggeri/Meder study
  • MFweb-app / MFweb-api — behavioral research studies with apple-picking game mechanics (Maggie's Farm)

This is when the work starts carrying a research component — not just "does it run" but "does it measure what the study needs."

2024: teaching and tooling

  • sample-telegram-bot — a Telegram bot crash-course I built for JCs (still my most-forked repo)
  • ntufood / nusfood — "made this webapp so I can choose where to eat in ntu"
  • audiototext, whisper-writer — the speech-to-text thread starts here

2025: speech, RAG, and teaching again

  • parakeetasr — the NVIDIA Parakeet transcription API (the one behind my n8n speech-to-text post)
  • Distilled-RAG — semantic compression via RAG-based deduplication (research)
  • Datagov-lessons — a data-cleaning course with real, messy datasets
  • bananapeel — banana slides → editable PDF slides for Canva/Slides/PowerPoint

2026: the Mac-AI year

This is where it got serious. Almost everything is on-device, Apple Silicon, agent-shaped:

  • macwispr — on-device voice dictation for macOS (Qwen3-ASR via MLX, or Parakeet on the Neural Engine). A free, open-source alternative to Wispr Flow. Hold a hotkey, speak, done
  • voice-evolve — two local AI agents call each other on a real Telegram phone line; a Gemini judge grades the call and the pipeline tunes itself until it sounds human. Runs entirely on Apple Silicon
  • marco-moe-apple-silicon — pre-training a 4.73B sparse MoE on a Mac Studio. Benchmarking 5 dispatch strategies found a 2,293× speedup between worst and best
  • cursorbleed — use Cursor as an OpenAI-compatible API, with the ConnectRPC reverse-engineering notes that explain how
  • videodub — single-container GPU video dubbing: ASR → translate → voice-cloned TTS → lip sync
  • hf2capcut — convert HyperFrames HTML compositions into real CapCut project files
  • lintwechat — WeChat API bridge for international accounts (WeChatFerry + Docker)
  • second-brain-recorder — open-source always-on audio recorder PCB that appears as a USB drive and transcribes to Obsidian
  • context-poison-bench — benchmark for how well AI coding agents detect planted lies in documentation
  • lc-350m — "Lint Clean": a fine-tuned 350M model that cleans voice-dictation transcripts

The through-line

Reading it back, the thread is: local-first, agent-shaped, and built to finish a job. Early repos were scripts. Now they're models I fine-tune and systems where agents call each other. Same instinct — make the tool disappear so the work can happen — with a much bigger toolbox.

The full list lives on GitHub. The cool ones are in the LOADOUT section of this site.

← All writing