A MEAN Stack app, planned and built in a week by Ozzie Balesaria, Matt Hunter-King and Stephanie Ye
NeighbourGood is an app that helps you to give help and get help, starting in your own neighbourhood.
Users can create jobs that they need help with, look at messages from prospective helpers, choose a helper, and rate that helper.
Users can also browse posted jobs, post messages and apply to a job, and rate their experience doing that job.
Our goal is to foster a cooperative society, starting close to home.
- We brainstormed and decided that we wanted an app that could help contribute to the social good, while giving us the opportunity to build RESTful routes and use third-party APIs.
- We wireframed using Balsamiq, focusing on a mobile-first design.
- We broke the project down into backend and frontend tasks, and then further down into routes and features.
- We listed all the tasks on Trello, and used the interactive board to keep track of the tasks and their statuses (Backlog, To Do, In Progress, Done, Blocked and Abandoned), and who was doing what.
Project Development Process
- Working as a team, we practised Agile methodology. We broke the development process down into sprints. During each sprint, we focussed on small, specific parts of the project. After completing each sprint, we evaluated our work and discussed our goals for the next sprint, before continuing the process. Each sprint lasted about 3-4 hours.
- We started with the backend first: the backend models, controllers, routes and seeds. We tested our RESTful routes with Insomnia before moving on to the frontend.
- At the frontend, we completed the RESTful routes, then implemented third-party APIs and extra features such as ratings and filtering.
- Once we were happy with the functionality of the app, we moved on to CSS and testing.
- The ability for users to send private messages or email each other.
- Using a payment API so users can transfer money for jobs that require money.
- Users can create a list of favourite people that they like to ask/help.
- An achievements system where users earn medals after completing a certain number of jobs.
Front-end Web Application Framework:
- Node.js with Express.js
- Google Maps
- Gmail OAuth
Project Collaboration Tool:
- Google Fonts