Bui Trong Khanh Duy / Product builder / Ho Chi Minh City
Building practical apps for focus, fitness, and family logistics.
I'm Khanh Duy, a full-stack developer in Ho Chi Minh City. My current work centers on three focused apps: LofiHood for calm Mac playback, SpotterFuel for crowded-gym workouts, and CampusCue for school notice follow-through.
5+ years
3 apps
20 tools
13 agents
JS / TS / React
Currently
Vietnam / GMT+7Shipping small products that solve a specific job well.
Current apps
Three focused products, built around specific moments of friction.
Each app starts with a clear everyday interruption and turns it into a simple next action.
03

A local-first lofi player for the Mac menu bar with bundled tracks, mood filters, local albums, imports, shortcuts, and a sleep timer.
- Bundled offline tracks
- Mood and album filters
- Menu-bar playback controls
Mark blocked gym equipment and find same-muscle alternatives so a crowded station does not derail the session.
- 119 exercises
- 17 muscle groups
- 16 equipment types
CampusCue turns flyers, PDFs, screenshots, and shared files into cards parents can review before adding anything to Calendar or Reminders.
- Flyers, PDFs, screenshots
- Parent review before handoff
- Calendar and Reminders flow
Browser workbench
Tools and agents for the work around the apps.
Use small browser agents for summaries, extraction, planning, data cleanup, and prompt work. Use private browser tools for JSON, QR codes, images, PDFs, text, colors, timestamps, and everyday utility tasks.
AI agents
Representative browser-first agents from the full catalog.
Free tools
Private, no-signup browser utilities for everyday tasks.
About
Built by Khanh Duy in Ho Chi Minh City.
I design and ship web, iOS, and macOS products with a focus on practical workflows, clear interfaces, and fast iteration across React, TypeScript, Next.js, and app-platform tooling.
const stack = [
'Next.js', 'React', 'TypeScript', 'Tailwind CSS', 'Node.js', 'Vercel'
];
// Ship small. Iterate fast. Focus on usefulness.
Practical first
Start with a real interruption, then ship the smallest useful loop.
Build clearly
Readable interfaces, typed code, and fast iteration over ceremony.
Keep it usable
Polish the details that make an app easier to return to.