I build apps

Copyright © 2006—2021 Anh Do 🇻🇳

Open Source

What I've contributed to and/or released into the wild. MIT licensed, unless noted otherwise



  • Member Since (Web, Ruby, Sinatra): Find out when someone registered their Yahoo! account. Quickly share that information on Facebook, and view Wikipedia’s Current Events page on that day, just because.
  • anthology (Terminal, Bash): Create an ePub from a list of web articles. Inspired by Readlists by Readability.



  • Exercise Genius (Open-source, iOS, Objective-C): Exercise tracking app for runners. Winner of Best Student Team and Microsoft’s Best Use of HealthVault APIs prizes at Cajun Code Fest hackathon (Louisiana, USA).
  • ADUpDownControl (iOS, Objective-C): An iOS6-era stepper control for picking font size.


  • (Open-source, Web, Ruby, Sinatra): Learn random facts about your tumblelog: when you registered your Tumblr account, how many posts you made, how often you create a new entry, etc. Achieved 500,000+ visits.
  • undistractify (Web, PHP, CakePHP): Convert regular web bookmarks into rate-limited ones to help deal with procrastination and better manage one’s digital wellbeing. The user can only access websites via these special bookmarks every few hours (or days).



  • doomsday (Web, PHP, JavaScript): Interactively learn Doomsday algorithm to mentally calculate the day of the week for any given date.
  • monologue (Web, Ruby, Sinatra): Personal diary inspired by Twitter where the user jots down a 140-character entry and picks a relevant emoticon to describe their day.
  • (Web, WordPress): Find random jokes to share on Yahoo! Messenger (when it was still a thing). The name literally means “800 characters”, which is the limit for a single message on Y!M.
  • Learn Something New Today (Web, PHP): Read random WikiHow article on each page load.
  • 360xport (Browser, JavaScript): Bookmarklet to export Yahoo! 360 blog entries and comments to WordPress’ WXR format for safekeeping.
  • e3 (Browser, JavaScript): Bookmarklet to insert emoticons in BBQuote or HTML into the comment area of a blog or forum post.
  • luteous (Web, PHP, JavaScript): WYSIWYG CSS editor for Yahoo! Mash, another failed social network launched in 2007.
  • wordclock (Web, JavaScript): Remake of the Standard WordClock.


  • WP-AVIM (Plugin, WordPress, PHP): Allow the readers to comment on blog entries in Vietnamese.
  • WPicnik (Plugin, WordPress, PHP): Integrate the now-defunct Picnik online photo editor into WordPress’ image uploading flow.


  • Nicer Permalinks for Vietnamese (Plugin, WordPress, PHP): Remove Vietnamese diacritic marks from permalinks to make them nicer while still being readable.