Skip to content

Latest commit

 

History

History
77 lines (53 loc) · 1.96 KB

README.md

File metadata and controls

77 lines (53 loc) · 1.96 KB

attendance-web

Recently renamed to 'Presence Check'

A website that will store the attendance information of my day-to-day college, and will display the percentage.

Plan

  • Take the week timetable.
  • Take a list of all the subjects.
  • Options to select the attendance information every day.
  • Show the percentage of individual subjects.
  • Add classes outside the day's schedule.
  • Make it work for multiple users (single user for easy development)
  • Use some SQL database (because it looks like this is a lot of data to be stored for months).
  • Might use AWS // VPS for database and hosting.
  • Dark mode
  • Ability to delete attendance entries
  • Profile page
  • Friends list
  • Change the color of the progress bar based on the percentage of attendance

Pre-requisites

  1. NodeJS
  2. NPM
  3. Web Browser

How to run it locally

  1. Install mariadb and ensure a 'attendanceweb' database is created with the appropriate tables. The SQL command to create the tables are located in the ./design-choices/db-tables directory.

    Tables:

    • Users
    • Classes
    • AttendanceLog
    • Attendance (view)
  2. Save your db configuration settings in the .env file (the requirements are also available in the .env-vars file).

    Requirements:

    • DB_USER
    • DB_PASSWORD
    • DB_HOST
    • DB_NAME
    • SESSION_SECRET
    • DEVELOPMENT
  3. Install node dependencies

    npm install
  4. a. Use nodemon to run the server

    nodemon

    b. Run the server manually

    node index.js
  5. Site is live at localhost:3000. Open it in your preferred browser.

Collaborators

Due to the minimal time and too high of a requirement, it is highly suggested to help me fulfill this challenge/dream task.

License

GNU General Public License v2.0