Hi, I am Kai

Full stack developer and a bit of everything else. Currently at Stripe.


  1. Beyond the Basics: A Curated List of TypeScript Tricks for Better Coding

    Type theory names are hard to remember, but some of them are very useful in practice. These are some types I've found useful in everyday TypeScript coding.

  2. Open Graph for Lazy Developers

    A simple guide to Open Graph optimization for your website, including how to set up your meta tags and how to test your website's Open Graph data.

  3. Optimizing PNGs for Size and Quality

    A simple guide to optimizing images if you have a few images, and a lot of time.


  • Screenshot of Givingchy


    A Kickstarter clone.

    • Vue
    • Go
    • PostgreSQL
    • Docker
  • Screenshot of NUSMods


    The largest NUS open-source project that helps students plan their modules and timetables.

    • React
    • Flow
    • Node
    • GraphQL
  • Screenshot of Elm-HN


    Hackernews clone in Elm.

    • Elm
  • Screenshot of Code@NUS


    Explorer for NUS open source projects and contributors.

    • Preact
    • Node
  • Screenshot of Jasmine


    iOS app that gamifies learning Mandarin.

    • iOS
    • Swift