Next Generation E-Commerce (Neeedo)

 

Needo-Logo

 

Overview

  • Contribution: 10/01/2014 – 07/30/2015
  • Topics: Node.JS, Scala, Android, E-Commerce, ElasticSearch, Sails.JS
  • Github-Repository: http://github.com/neeedo 
  • developed Software: Node.JS based webapp with Sails.JS backend
  • Skills: Node.JS, Bootstrap, JQuery, Leaflet / Open Layers Map, Imagemagick, Devops (Deployment-Quality-Pipeline), event-based development
  • Team size: 8 contributors 

The project “neeedo” was part of my practical phase in my studies “International Computing and Media”.  The core goal of neeedo was to offer a next generation e-Commerce experience.

Our next generation solution should offer users a possibility, to easily find offers that match his / her perceptions. Using neeedo, users can create persistant demand “cards” like you would find on some blackboards in German supermarkets. They could specify the location in order to match local offers. During the creation of the demand, the user gets supported by an automated tag completion & suggestion system that is based on learned data: offers that were already created are a good basis to create such offers that are easily found by other users and match their imagination.

After the creation of a demand, the user will be able to see matching offers. The matching takes care of the distance between the offer and user’s location.

Technically, this project consisted of three softwares:

  • Scala-based API which capsulates the business logic (User membership, Offers, Demands, Matching, Favorites, Messages) as Restful API and was designed to allow linear scaling.
  • Node.JS based webapp which consisted of an API client (separate NPM module) to encapsulate  the connections to the API and handles user sessions
  • Android App which offered a similar look & feel like the webapp and contained additional features such as a product scanning tool.

Since we split our team into three subteams, for each software a development & deployment process was settled. The webapp for example used a continous delivery approach: on each release in the stable code branch,  software tests were automatically done by the Travis CI service. On success, the changes were deployed onto our Heroku cloud hosting.

See our posters below – unfortunately, they’re all in German.