NodeJS Web App

Tasting Party Web App

The Tasting Party web app was a new concept that would allow customers to create and host their own tasting event using a wine starter kit that my company provided. The main features of the tasting party app included:

The main features of the tasting party app that had to be included were:

  • Create a wine tasting party as a host
  • View all your tasting parties as a host
  • Edit an existing tasting party as a host
  • RSVP to a wine tasting party as an invitee
  • Send email notifications for upcoming parties, RSVP emails to host and invitees, event reminders, changes to the parties

I decided that we should build this app using a REST API approach, we prototyped the whole project in a 2-night hackathon using the MEAN stack. I enjoy rapid prototyping before building out a project because you can test out the technology and help to understand where you might get stuck. I was the lead developer on the project and had 2 other front-end developers on the project.

Once we had developed the prototype and showed it to the business, we had to build a production web app. The best approach was a cloud-based web app that we could integrate into our website using REST API’s, this is the preferred approach for most projects, as it allows us to use a JavaScript templating engine to create the views that are tied to the backend data.

Technology Used:

  • Appcelerator Arrow – to build the API’s using NodeJS – hosted in the cloud
  • Postmark – Transactional email for web apps with a really nice REST API
  • Compose – A cloud-based database service with backups, we used Mongodb

The project took about 3 months to complete from analysis, design to production build – it went live in August 2016. It was a fun project, that allowed myself and the team to get our hands dirty with building a web app using JavaScript for both the front-end and back-end.


NodeJS Web App

Case Cobbler Web App

The Case Cobbler web app an internal tool we use to build product case images using a set of templates, this was originally a PHP app developed by an outside agency. I decided to re-develop the app using the MEAN (Mongo Express Angular Node) stack. 

The old tool was limited in features, so I took the rebuild as an opportunity to add new features that included:

  • Ability to easily add new templates
  • Automatic resizing (we have 3 different sized images, the previous tool only produced 1 image and a designer would have to resize the other 2)
  • Case images are uploaded directly to production when completed
  • All completed cases configurations are stored in MongoDB

Technology Used:

  • NodeJS
  • MongoDB (local instance on the server)
  • ImageMagick
  • AngularJS for the front-end views

This project took about 1 month to build and was very challenging, I had never worked with ImageMagick before and had only a few interactions with Node. What drew me to node was the fact that I could access the file system and use ImageMagick in the command line to do all the image processing. I also used Node to move the completed files to production, the team was very happy with the new tool.