Skip to content
@trackitward

TrackIt

Online submission technology for units.

TrackIt

Trackit logo

A web application that allows students to submit their units to teachers for them to accept or reject them


Table of Contents


Demo Vids

Full Playlist


Teacher Side

Unit Submissions

The following prompt allows teachers to input the unique code they receive from students. Unit Submission Empty

Here is an example of a code: Unit Submission Full

Unit Acceptance/Rejection

After inputting the unique code received from the student, the teacher can view all the information of the submission including student name, course code, section number, unit number, and the last date the student submitted a unit. The teacher can then accept or reject the unit submission using the checkmark or cross button respectively. Teacher Side Submission


Student Side

Student Login

When clicking "login" from the landing page, students are prompted to this page:

Login Page

Students can input their student number (Mary Ward student number) and password (students can choose their password) to login to Trackit.

Student Login

The Unit Tracker

The main feature of the application, the unit tracker, is similar to the unit tracker found in the agenda. On the first column on the left, students can see the courses they are enrolled in. Each column afterwards are the units. Students can see the number of units they have completed in each course.

Unit Tracker

How to Generate a Unit Submission Code

By clicking on the course and unit of choice, students will be prompted to the following:

Unit Submission

This page includes all the information of the unit submission including student name, course code, section number, unit number, and last date of submission (note: last submission date is not shown for this example as no other units were submitted).

The number on the right is the submission number which should be given to the subject teacher.

The submission number expires in 2 minutes and every code is unique and random for security reasons.


Landing Page

Picture of the landing page: Landing Page

The "Student Login" and "Teacher Login" button on the top allows for students and teachers to log in to the application.

Founders:


Code

Front End

Written in pure HTML/CSS/Javascript. Using Javascript allowed us to create HTTP requests to our API that would be able to show the data to the users in a easy to access way.

Back End

The backend of the project is written in pure Golang. It provides a feature-rich HTTP API to the front-end and handles all information going through the TrackIt app. There are many safety features built-in, including rate limits to prevent the API from being attacked by large amounts of requests at a time.

  • Click on the links below to go to important front-end files

    • main.go

      Control the main function of the API and route all the traffic through the correct endpoints

    • unit-submission.go

      Control the unit submission process by managing the user files

    • auth.go

      Control authentication and logins

    • student.go

      Control student files and manage their profile and units files

    The backend stores information in JSON files saved with unique file names. The benefit to this way of doing storage is that it allows for the data to easily be written and read from the API. As well, it makes it easy to parse and pass over through the internet.

    Passwords for each user are HASHED and SALTED using a well known encryption algorithm known as bcrypt. This means that the users password is never logged in plain text, which highly increseas security as the files containing passwords have extra protection.


Pinned Loading

  1. trackit-web trackit-web Public

    Frontend for TrackIt Unit Tracking Software

    CSS 1

  2. trackit-core trackit-core Public

    Core backend of TrackIt Online Submission

    Go

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…