Atualizado para 24/01/2020
Social media is increasing exponentially in the lives of children, teenagers and adults. It allows family and friends to stay connected through the internet without the need to physically move to each other. Because of this ease of access, social media has been growing immensely in popularity and doesn't seem to be stopping any time soon. To accommodate this rising number of users many companies are creating more platforms, each with their own creative twist.
In this project we intend to create a platform for hobbyists to come together, share or learn more about their hobbies, whatever they may be. One example of this type of platform is meetup. On this website you can create events for people to sign up and meet.
We believe we could bring people closer together by giving them a way of joining or hosting an event with other people and ultimately enjoy their hobby to the fullest, all the while in the presence of other like minded people.
(Assumption for the main scenario: user is logged in successfully) Main scenario:
- The main scenario relies on the functionality to create/join events. In order to view existing events the user has to go to the categories list (either by scrolling down or by clicking on "categories" in the navigation bar. After choosing a category by clicking it, a new page will open showing every event that belongs to the chosen category. Lastly the user has to click the "join event" button to join the said event. When viewing an event the user can click the "View event" button, which provides more details of the event and a map with a route and directions from the user's current location to the event's location. The users can also create events by clicking on the "create event" button. This will open a window with a form(event name, description, category, location and date) to fill. After properly filling the form and clicking the submit button the event will be created and shown for others to see and join.
Secondary scenarios:
- Hosts are able to delete events they created.
- After the event ended the user will choose a rating for the event, from 1 to 5 (star rating) by clicking on the amount of stars. Then he has the option to leave a comment.
- If the user wishes he is able to sort events by type, proximity and popularity by clicking the “Sort” button.
- The user can utilize the search bar to look for other users by writing their name.
- When visiting another user’s profile you can click a button to add him as a friend.
- By clicking on the Chat icon the user will see a friends list popping up and is then able to click a friend to chat with.
- User: Anyone with interest in using the website to look for events to join.
- Advertiser: Anyone with interest in advertising his own workshop on the page.
| # | Requirement | Description | Priority |
|---|---|---|---|
| FR01 | Create event | Users can create events | HIGH |
| FR02 | Join event | Users can join premade events | HIGH |
| FR03 | Search event | Users can search for events | MEDIUM |
| FR04 | Rate event | Users can rate joined events | LOW |
| FR05 | Delete event | Users can delete their events | MEDIUM |
| FR06 | Event chatroom | Users can join the events chatroom | MEDIUM |
| FR07 | View event location (and directions) | Users can view the location of the event and see the route to it | HIGH |
| FR08 | Edit event | Users can edit their own events | LOW |
| FR09 | View profile | Users can view their profile | MEDIUM |
| FR10 | Edit preferences | Users can edit their preferences on their profile | LOW |
| NFR01 | Responsive | Works in all platforms (mobile, Windows, Mac, etc) | LOW |
| NFR02 | Maintainability | Easy to maintain | MEDIUM |
| NFR03 | W3C | Web in 3 clicks | HIGH |
| NFR04 | Performance | Fast response times and well implemented | HIGH |
| NFR05 | User friendly | Easy interface to navigate and understand | MEDIUM |
- First prototype by 17/11/2019.
- Alpha version of the project by 15/12/2019.
- Final version by 24/01/2020.
- HTML.
- CSS.
- Javascript.
- Node.js + Express.js.
- Miguel Bugalho.
- Jacinto Estima.
- José Vasconcelos.
- Gabriel Pestana.