After experiencing the current crisis in affordability, we set out to create a platform that lowers costs by allowing everyday users to borrow goods and request services through mutually beneficial deals. We were inspired by existing applications such as Uber and Airbnb for their use of technology to lower costs for average Canadians.
What it does
Jobber is an online platform which facilitates the exchange of services. Any user on the platform may make a posting for a service that they want done or a good they would like to borrow. For example, this could be mowing your lawn or borrowing a bike for a certain amount of time. Then, other users may take up the job (e.g. if they have a spare bike laying around) and earn a certain amount of money by doing it, as determined by the poster.
How we built it
We built Jobber using a Flask backend and a Next.js frontend written in TypeScript. The backend, which manages the SQL database and user authentication, implements a REST API to communicate with the front end. On the other hand, the front end uses front end to display all the information.
Challenges we ran into
One of the challenges we ran into wereerrors surrounding integration. Due to the large nature of the project, we built many components separately and combined them all together in the end. However, although certain components worked independently of each other, when combined they yielded many errors.
Accomplishments that we're proud of
We are proud of finishing the project despite the challenges with time. In particular, we are happy with how the UI turned out and the general functionality of the web app.
What we learned
Through building this project, we learned/developed technical skills in technologies like Flask, SQLAlchemy, Next.js, Google Maps, and Typescript. We also learned more about web security by debugging errors such as CORS violations.
What's next for Jobber
In the future, we plan to make the backend more secure and refine its API endpoints, including optimizing the database queries. For the front end, we plan to allow for more user verification to ensure that there is a dispute resolution mechanism surrounding the application.