Get Together

App main goal

Get Together is a Web Application designed to connect people who loves extreme sports. Have you ever travel to do any sport in your life? Have you ever been into a place that is the perfect place for a specific sport and had a great time there. Imagine if you could join this experience with the possibility to meet new people and share that particular moment with them, people who have the same objective as you, do the sport they love
Get Together is here to fulfill this gap and connect you with the right buddy.

Time to deliver the APP: 2 weeks

Hosted on Heroku: Get Together

User Stories

  1. As a User I can access the Landing Page
  2. As a user I can create a profile
  3. As a user I can upload my profile Picture and Banner
  4. As a User I can see my profile page
  5. As a User I can create my trip
  6. As a User I can see all my trips
  7. As a User I can filter a list of possible buddies through my trip
  8. As a User I can see Buddies profile
  9. As a User I can invite people to Get Together(Group Chat)
  10. As a User I can send and receive messages on the group via Live Chat
  11. As a User I can accept or reject a Group Invitation
  12. As a User I can see all my Chatrooms
  13. As a User I can see one of my Chatrooms
  14. As a User I can upload my trip pictures inside the Trip Album
  15. As a User I can delete a photo from the Trip Album
  16. As a User I can delete an album

Main Features

Everything related to User and User Authentication is done with Devise.

We used Pundit to manage Authorization on Get Together.

We used Noticed to create the notification and Stimulus to broadcast when You receive a notification.

Users can create a trip and Through that trip you can filter the buddies you can connect that will be in the same place, for the same sport at the same time.

Users can invite buddies to a chatroom so they can organize the details of the trip, the chatroom is live and handled with JavaScript

Users have a map with pins where you have been or where you are going next, done via MAPBOX API

Users see their own profile differently than they would see someone`s profile

Users can change their profile picture and banner

Users can change add and remove photos to the albums

Trip addresses are autocomplete, managed with the MAPBOX API again, we do that so we a certain we can get Longitute and Latitude from a certain address

A album is created everytime you create a Trip

The invitations are automatically created as soon as you create the chatroom, only the one who received or sent a invitation can join the Chatroom

Data Base and Schema

The Data Base os managed with PostgreSQL, for photos we use Cloudinary. Below you can see the detailed Schema:

Project Management and Design

We use Trello to Manage to project and the Design was made with Figma. For version management we used GIT and GITHUB

Trello:

Figma:

Challenges

The main challange was to think and structure the Data Base, tables and association between them. After that it was to chose the Features that we wanted to be implemented on the 2 weeks time scale. We have an endless list of features that we would like to have, but we had to chose the most essential ones.

TO DOs

Frontend is something that we need to improve a lot still, but we have been learning a lot with our mistakes. Make the WebApp tottally responsive is the main go, and improve the User Experience too.

We want to implement review on the Buddy trip

We need to refactor the code