My name is

nnie Pham

Interior designer turned frontend web developer

The 411:

Hello! I'm Bonnie, a frontend web developer. I never thought I'd love coding as much as I do, but probably not on par as my love for corgis. I don't doubt that perhaps one day soon it might overcome that position in my heart!

I love everything that involves great design, JavaScript and a great challenge!

Please feel free to check out my following programming and design accounts:


A fresh seafood market application that allows users to create a store through their login with either Facebook, Twitter or Google account. Users can update, delete and add different inventories, and vice versa if a user does not own the store, they cannot modify stock.

Using React states, 32 boxes of random colours have been generated from a list. Every 5 milliseconds, a box is selected at random and the colour is randomly swapped with another.

The recipe list is first populated with sample recipes using React's default props. Users are able to add a new recipe and delete existing recipes.

This drawing application allows users to login with their Google account to save their creative masterpieces. Using Paper.js, users can draw with customization of stroke width, style and colour.

This project allows users to locate creatives based on either their current location or enter a city of their choice. Their search is then customizable by creative field. All creatives' profiles have been provided by Behance.

A fully customizable shopping list. Users can add items, delete items, highlight/cross off items, search through items and clear a list of items.

The theme of Pokemon was chosen for this interactive game. Players will go through a series of challenging questions to test their true knowledge of the popular TV/game series. They will then be notified of how likely they are at becoming a Pokemon master.

This application is able to generate calendars for 15 years past and in the future. Uses AngularJS directives.

Using the GeoNames API, this web application focuses on views, routes and controllers in angularJS. Simple animations done with ngAnimate when route changes are detected.

A fun and interactive game play on the classic Mad Libs Game. Players will choose gender and enter the empty fields accordingly. Players will not be able to submit the form unless the form becomes valid. The second view will show the full story, with the option to reset all fields and start over.

A convenient tool developed to help waitstaff calculate their earnings by entering meal price, tax and tip percentage. A grand total is kept until users hit the reset button when starting a new shift.

The classic, hot or cold game - in interactive game mode. Players will guess a number between 1 to 100, and be notified of how hot/cold they are from the number. The game will log the past guesses of the player, and terminates when the number has been successfully guessed.

This landing page demonstrates the build cycle using Gulp, utilization of the CSS preprocessor, Sass and simple animations done using Velocity.js.