We wanted to use Meteor to create any sort of product, through brainstorming we decided we wanted to use either the Twitter or Amazon API. We also wanted to create something fun and new so this is when we came up with the idea of SurpriseMe.

What it does

SurpriseMe lets the user choose an amount of money to submit , we then get them a variety of products from different categories. We then direct the user to a basket where they can check out the products they have been randomly given and proceed to checkout to put their ( or their friends ) address.

How We built it

We used the amazon API to search for listings from a random category with a random title and added multiple items up to a price into a shopping cart, we used an algorithm to split the required value into parts and found items of roughly that price or less. Then we tried to find an item with the left over money and repeated until the cart was as full as possible.

Challenges I ran into

We wanted to make it impossible for the user to know what products they would be getting, however, this was difficult to do through the amazon API ( as expected). We also found that lots of items had postage and packaging which messed with our calculations so we had to find items that had the option for free super-saver delivery.

Accomplishments that I'm proud of

Proud of successfully using Less for the first time, we had a stage where we decided to change the colour scheme of the entire website. Normally this would be a nightmare, but when asked if I could change the base shade of the website I was very happy to be able to say that I could easily do that by changing one line of code.

We are very happy to have been able to achieve our goal of randomly gathering up products and we are really impressed with how much we have been able to develop in such a short time period.

We created an algorithm to add random items to a cart and calculate

What I learned

How to work well on Meteor in a team. We learnt the ins-and-outs of the Amazon API. How to use Less to create a much easier editable theme. How to use many packages easily in conjunction with Meteor.

What's next for Surprise Me

We would love to make it so that there is no way for the users to know what they are getting and we want to be able to extend it to make it easier for the users to buy “Surprises” for their friends and family. We also want to add a page with past orders showing.


We used these Meteor packages :-

nemo64:bootstrap iron:router alexsmr:apac less accounts-password random accounts-ui liangcc:meteor-accounts-amazon mrt:nprogress

Share this project: