API for Google Developer Student Club at my Campus

Pratik Singh - Jan 9 '22 - - Dev Community

Overview of My Submission

The API is a basic REST API written to be called by the App built under Android Study Jams 2021. We built this API under the Org. Google Developer Student Club - DSI.
There is basic work of the API is to provide routes to GET and POST the timetable of different classes that are conducted on our college campus. This app provides the data for the classes happening at Dayananda Sagar College of Engineering, Bangalore in real-time.
This is still a system in development.
Disclaimer: My submission is for the API. Not the App, using it.

Try in App

Submission Category: Choose Your Own Adventure

GitHub logo kitarp29 / api

The API for GDSC ASJ App

API for Schedura

GitHub contributors GitHub issues apkSize

Overview

The API is a basic REST API written to be called by the App built under Android Study Jams 2021. We built this API under the Org. Google Developer Student Club - DSI There is basic work of the API is to provide routes to GET and POST the timetable of different classes that are conducted on our college campus. This app provides the data for the classes happening at Dayananda Sagar College of Engineering, Bangalore in real-time. This is still a system in development.

✨ Proposed Solution :

This project proposes an “Attendance Manager System” which also has a “Digital Time Table” in it.

The attendance management system allows students to track their attendance in any subject of their choice. They just have to add the subject of their choice and mark attended or missed for each class they have. Then the app will…

Additional Resources / Info

  • NodeJS v14+
  • MongoDB Atlas
  • npm packages
  • Heroku

Demo:

Try this
Image description

This is generating the timetable of the ECE Branch B Section of my campus.

There are two parameters that the API has.
id: This handles the exact branch, batch, and section of the class at the campus.
day: On the day of the week, we need the timetable.

One can change the day from 0 t0 6 to get time table of the week from Monday to Saturday.

There is also a POST Request. It is ready but not integrated with the App as of now.

🛠 How To Setup :

Minimun requirements:

Steps to set up locally

  • Clone the Repo
  • Open in any code editor
  • In index.js replace process.env.DATABASE_URL with the URL of your MongoDB Database.
  • In your terminal, run:

    npm i

  • Now, run:

    nodemon index.js

This should start a server running at http://localhost:5000/

Tasks for future

  • Make logging procedure for each request
  • Containerise the API Server
  • Deploy it in a K8s Cluster
  • Add Monitoring tools for the server like ELK, Prometheus, and Grafana
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .