Time50 is a final project for CS50x 2017, built by Joe. This webapp utilizes many different technologies to give you a simple but consise way of collecting the time spent on a specific course topic, and displaying it through graphs.
The backend is developed in python through flask and makes the use of jinja2 framework and sqlite3 databases.
And Finally, ajax is used for dynamic webforms and timer functionality.
The timer records your time. It has been built to have a minutes accuracy. It also provisions against an internet disconnect and will store unsent update "ticks", ready to be sent when you get back online.
Users have available 3 pre-built metrics to view, allowing choice between the dataset. The "weekly view" shows the amount of time spent this week, which resets to 0 every Monday. The "total overview" shows the total amount of time spent on each pset. The "all time" view will depict the total dataset in a lengthy graph. This can be seen in a seperate page.
In order to maintain the webapp, admin rights have been made available. If you are privileged enough, you can add or edit course pset topics as well as see a list of admins. You may also add or revoke admin rights straight from the admin page.
This feature ensures that the site can evolve when the CS50x course does!