A web app leveraging the Google Calendar API to show, filter and sort upcoming events based on specific topics and location.
When user hasn’t searched for a city, show upcoming events from all cities.
- Given user hasn’t searched for any city;
- When the user opens the app;
- Then the user should see a list of upcoming events.
User should see a list of suggestions when they search for a city.
- Given the main page is open;
- When user starts typing in the city textbox;
- Then the user should receive a list of cities (suggestions) that match what they’ve typed.
User can select a city from the suggested list.
- Given user was typing “Berlin” in the city textbox AND the list of suggested cities is showing;
- When the user selects a city (e.g., “Berlin, Germany”) from the list;
- Then their city should be changed to that city (i.e., “Berlin, Germany”) AND the user should receive a list of upcoming events in that city.
An event element is collapsed by default.
- Given user has applied a search filter;
- When the list of event elements load;
- Then the event elements should be collapsed by default.
User can expand an event to see details.
- Given user is shown a list of events;
- When a collapsed event element is clicked;
- Then the event element should expand to display more information.
User can collapse an event to hide details.
- Given user is shown a list of events;
- When an expanded event element is clicked;
- Then the event element should collapse to hide the additional information.
When user hasn’t specified a number, 32 events are shown by default.
- Given user is shown multiple events at the same time;
- When user hasn’t specified a number;
- Then 32 events are shown simultaneously by default.
User can change the number of events displayed.
- Given user is shown multiple events at the same time;
- When user has specified a number;
- Then the specified amount of events are shown simultaneously.
Show cached data when there’s no internet connection.
- Given user is shown multiple events at the same time;
- When user has lost their internet connection;
- Then cached data is shown.
Show error when user changes search settings (city, number of events).
- Given user is changing search settings;
- When user has lost internet connection;
- Then show network error message.
User can install the meet app as a shortcut on their device home screen.
- Given user requests an app shortcut;
- When the OS prompt is confirmed;
- Then app shortcut gets installed on the homescreen/desktop.
Show a chart with the number of upcoming events in each city.
- Given user is on the homepage;
- When the chart loads;
- Then visualize the number of upcoming events in each city.