DEV Community

Mitul Savani
Mitul Savani

Posted on

EventUp

Table of Contents

Overview

Event Up is an event posting social media app which is accessible for both platforms; iOS and Android. The product could be used by any university student to plan, post, browse, and RSVP for events around campus.

Functionality

  • Users sign up or login using their university email.
  • Users can create and organize events on EventsUp.
  • Users can share an event with their buddies and classmates.
  • Users can RSVP for multiple events to notify the host.
  • Users can add event to their calendars to get notification.
  • Users can get travel directions from their geo-location to the venue on google/apple maps.
  • Users can start a conversation by posting comments/queries on any events for the host to respond.

Demo

Try it on Expo

View Demo: https://mitulsavani.com/EventUp/
Source Code: https://github.com/mitulsavani/EventUp

We used React Native Elements library to build a Screen and Components, React Navigation library to handle navigation and various packages including React-Native-Maps to integrate Map View and redirect users to native maps for directions to the event.

Getting Started

Installation

git clone https://github.com/mitulsavani/EventUp.git

cd Front-end

yarn install

yarn run start (ios)

yarn run android (android)

On Expo

Build

  • Through the console: expo start iOS If you have an iOS simulator installed on XCode, it will automatically launch. Otherwise, you can scan the generated QR code on an iOS device.
  • Scan the QR code for the built project on Expo with an iOS device: Expo Build

Details

  • Login

    Login with an e-mail and password, or through Google and Facebook. The user is then redirected to the Events Screen.

  • Registration

    Create an account with a name, e-mail, and password. The user is then automatically logged in and redirected to the Events Screen.

  • Events

    Displays a feed of all of the soonest events. Users can choose to filter the feed with options such as category, date, time, and location. Tapping an event will redirect the user to the Event Details screen.

  • Event Details

    Provides all of the information about an event. This includes an image, description, category, date, time, and location on a map. On this screen, the user can also: RSVP for the event, add the event to their calendar, or open the location of the event in apple maps, or message the poster.

  • Create Event

    Users can provide all of the details for an event and post it. The category and location are selected from a drop-down menu.

  • RSVP

    Displays all of the events that the user RSVP'd for. Tapping an event will redirect the user to the Event Details screen. Any messages from other users will be displayed in addition to the regular details.

  • Profile

    Contains a Sign Out button that will redirect the user to the Login screen.

alt text

API Routes

  • POST /users/login

    Request:      e-mail and password

    Response:   user id, login status, response message, and access token

  • PUT /users/register

    Request:      First name, last name, e-mail, and password

    Response:   user id, login status, response message, and access token

  • GET /users/getUsers

    Response:   login status, response message, number of users, and an array of user objects

  • POST /users/RSVP

    Request:      User ID, event ID

    Response:   login status and response message

  • DELETE /users/RSVP

    Request:      User ID, event ID

    Response:   login status and response message

  • GET /users/RSVP/:UserID

    Response:   login status, response message, and a list of events the user RSVP'd for

  • POST /users/posts

    Request:      User ID

    Response:   login status, response message, and a an array of event objects that the user posted

  • GET /events

    Response:   An array of event objects

  • POST /events

    Request:      Event name, description, age restriction, user ID, Category ID, location ID, image, date, start time, and end time

    Response:   login status, response message, and event ID of the created event

  • DELETE /events/:EventID

    Response:   login status and response message

  • GET /events/:EventID

    Response:   login status, response message, and the event object tied to the ID

I congratulate the class of 2020 and a huge appreciation to GitHub Education for organizing this.

Thank you for reading, mitulsavani

Discussion (0)