We used a combination of Node.js, Express, Mongo, Mongoose, and Semantic UI to create an app that utilizes two APIs (Google Maps and Foursquare) to give users a custom HipScore based on form inputs. Users are persistent, and can change their neighborhood preferences. We serve the users and locations up from our own homebrewed API.
###General Approach We Took
As a team, we decided early on that the best way to tackle the project was to play to our individual strengths. Brendan took ownership of the back end, Carolyn took ownership of the front end, and Blake ran back and forth between the two as necessary. Our PMs supplied graphics, copy, user stories, wireframes, usability testing and support.
These are our original product sketches:
[register or login] https://drive.google.com/file/d/0BzZ_cUMX9Ti4QTVUN2hsaExvRjg/view?usp=sharing
We also have a paper prototype:
[paper prototype] https://popapp.in/w/projects/572919e8b36ade27756be0a3/mockups
This is a higher fidelity wireframe based on user testing done by the PMI team:
###User Stories See User Story File
###Screenshots Of Our App In Action
[login / signup form] https://drive.google.com/file/d/0BzZ_cUMX9Ti4cnhHazREUGhXcGM/view?usp=sharing
[custom hipspace score page] https://drive.google.com/file/d/0BzZ_cUMX9Ti4OU1PRm5xajZVR0U/view?usp=sharing
[custom hipscore neighborhood with options checked] https://drive.google.com/file/d/0BzZ_cUMX9Ti4bE82aWprVjRUOXM/view?usp=sharing
[ads & apartment listings] https://drive.google.com/file/d/0BzZ_cUMX9Ti4aklLYkxwbERFQVE/view?usp=sharing
###Unsolved Problems & Major Hurdles
Unsolved Problems: Getting third party real estate APIs to play nice in the amount of time we had was problematic. Full and awesome form validation using Semantic UI was also problematic. We were unable to get the forms to submit without hitting enter, too.
Major Hurdles: We didn't have any super major hurdles - learning Semantic was less easy than zero effort; getting APIs to play nicely together was not instantaneous; and contemplating what was needed for creating the scores was also a trick of logic.