Neighbourly

A web app that allows users to trade or give away essentials to their neighbours. The app aims to create new relationships between neighbours, leading to stronger communities. Users can upload and manage their listings, browse a marketplace to find items and communicate with other users through an instant messaging feature. The minimum viable product focuses on the trade of food and ingredients, but future updates will endeavour to create a general marketplace where neighbours can list anything to help their community (i.e school uniforms, baby clothes, services).

NeighbourlyscreenshotNeighbourlyscreenshotNeighbourlyscreenshotNeighbourlyscreenshotNeighbourlyscreenshot

Learnings

Storing user uploaded images was a new experience for me as I had not dealt with cloud based simple storage before. The upload process involved streaming an image from a user's file system to a cloud API (DigitalOcean), which would then send back a url. This url was then stored in a database (Google Cloud), along with the rest of the user's details. Gracefully handling errors was important during this process as it required promises from two different APIs. I found the implementation simple as I was dealing with two well designed APIs and the experience made me more confident when using cloud services.

Another learning occured after I had implemented the Ably API for the instant messaging feature. Dealing with Ably's SDK syntax was difficult because the library used design patterns that I was not familiar with. I had to study the documentation in depth and experiment with the API before commiting to it's use. This process taught me the importance of reseach during the planning stage and the importance of developing a simple proof of concept before starting the project (if using technologies that I am not familiar with). This experience gave me more confidence when working with new technologies as I was confident in my ability to iterate and experiment with code that I was not entirely familiar with.