Skip to content

Clubs and events Design Doc

Aksh Bansal edited this page Jul 16, 2022 · 10 revisions

Clubs and events

Author: Aksh Bansal
Reviewer: Saket Patel
Status: In review


Why?

Currently, all the club activities such as club registrations, hosting an event, making and managing event reports, etc. are done by the club members and the college administration (generally) through emails. This way is usually pretty inefficient because emails get lost and a lot of time is spent doing tasks that can be automated. So, this project will help both the club members and the college administration to manage gymkhana activities.

Goals

  • Help students explore and join clubs easily.
  • Make it easier to host and manage an event.
  • Make it easier for college administrators to view club activities.

Features

  • Club pages

Each club will have its own page where we will show some basic info about the club and an option to register for the club if the deadline is open. This page will be accessible to all. The content of this page will be only editable by the core members of the club. This page can be visited by clicking on the club card.

The register button will redirect users to a Google form which will be provided by the club's core team. Google form makes sense here because each club may require a different set of fields and also it is good for the core team to have a response sheet of all members and their details. The app will get notified if the form is successfully submitted using webhook in the google form and then we will save it in our database.

We will disable the registration button if the user has already registered for this club.

The api response/form fields for this page will include

{
  logo_url: string,
  description: string,
  club_name: string,
  deadline: date,
  registeration_link: string,
  registered: boolean,
}
  • Events management page

Each club will have an events management page which will be accessible by the core member of the club. This page will allow them to create, update or delete events. The link to this page will be visible on the sidebar.

The api response/form fields for this page will include

{
  banner_url?: string,
  description: string,
  event_name: string,
  address/link: string,
  start_time: date,
  end_time: date, 
}

We will also show the number of RSVPs(registrations) for the past and ongoing events.

  • Event page

Each event will have a page that will be accessible to all. This will show basic info about the event as mentioned in the prev feature. It will also have an option to RSVP for the event. This will help event hosts to keep track of how many students are attending the event. This page can be visited by clicking on the event card.

We will also add email notifications and reminders for the events later.

  • Event reports

Each club will have an event reports page which will be visible to college administrators and will be editable by the club's core members. This will contain event reports(Google docs) for all events conducted by the club. The link to this page will be visible on the sidebar.

The api response/form fields for this page will include

{
  event_name: string,
  report_link: string,
}
  • Club news

This can be implemented later.

  • Lecture hall/lab booking

This can be implemented later.

Clone this wiki locally