Greenpeace

Overview

Greenpeace McGill is a non-profit club that promotes sustainability and the environment. They are looking for an upgrade on their current map of sustainable Montreal stores. To do this, the project will consist of an application that McGill students can use to pin, view, add and react to sustainable clothing stores and restaurants.

Backend:

  • Javascript/Typescript
  • PostgresSQL
  • TypeORM
  • Docker

Frontend:

  • React.js
  • Material UI
  • Google Maps API

Key Features

  • Google Maps API integration
  • Pins (CRUD operations)
  • Reactions (on pins)
  • Authentication (User/Admin)

Workflow

  1. Create your own branch for your task (if pair programming, one per pair), name it as <your_name>/task_type>/<short_description>.
  2. Commit your changes with descriptive commit messages (conventional commits are recommended for a standardized naming process).
  3. When you're ready for your code to be reviewed, open a Pull Request and tag one or two devs/PMs/TLs as reviewers. At least one approval is needed to merge to the main branch.
    • If your branch cannot automatically be merged, it means your branch is out-of-date with the main branch.
    • Either merge main into your branch, or rebase your branch on top of main. This part can be confusing so don't hesitate to ask for help!
  4. Fix any comments the reviewer(s) may have.
  5. At this point, if you have an approval and no conflicts with main, your branch can be merged!
  6. Delete your feature branch once it has been successfully merged.

Helpful Resources