Geoemetric Men Illustration Series

Summary

Priceline PicMe microsite was a photo sharing contest commissioned by priceline.com's marketing department in order to engage their employees to share their travel/vacation photos, with the most popular submissions becoming eligible for prizes. The site was built with Nodejs using the Express framework + MongoDB, and hosted on a Ubuntu server via Digital Ocean (they rock!). The client-side logic was custom built with some plain old JavaScript + jQuery, since we felt that the scope of the project did not require the use of a major framework.

While the design of the site had to coincide with a look and feel consistent with other Priceline internal sites, this project presented multiple (fun! exciting!) technical challenges, first being that this was going to be an intranet site hosted externally. This requirement meant we had to build a custom login/account component (leveraging passportjs, http://passportjs.org) so that only priceline employees could sign up and participate. This account registration required that those signing up had an active priceline email address which would be validated via confirmation email once the user created an account (nodemailer came in handy here, https://github.com/nodemailer/nodemailer). Certain accounts also had to be set up with administrative rights which would allow them to collect contest data and download the original high resolution image uploads.

Photo management was also a bit of an undertaking. To optimize site performance, every uploaded image was scaled down to a "thumbnail" copy and a "preview" copy (Imagemagick was key, https://github.com/yourdeveloper/node-imagemagick), both stored on the Ubuntu server. The original high resolution copy, however, was backed up to an AWS S3 bucket for preservation/space saving purposes.