ruchern-chong / uqfinal

A tool to help University of Queensland students calculate their required grades

Home Page:https://uqfinal.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UQ Final

UQ Final is a tool which helps students calculate what grades they need to get on their assessment in order to achieve a desired grade in courses at The University of Queensland.

You can use the tool at uqfinal.com.

UQ Final is not associated with The University of Queensland.

Software Structure

The app is in two parts, the fully-static webapp and the Python api which powers it.

Webapp

The webapp found in the /site directory is fully static and is served to the users with S3 and Cloudfront.

You can contribute to the webapp in simple Javascript, HTML and LESS without any required knowledge of templating or server side code. The site can be run locally and is configured to point to the production API. The core files for contribution in this area are index.html, app.less and app.js.

API

The API found in the /api directory is a Python Flask app which is served by AWS Lambda and API Gateway in production.

To run the API locally you need to install it using pip install ..
Then, set the UQFINAL_DB_URI environment variable to a Database URL. You can generate the required tables in your database by running python run.py generatedb. The tables will be empty, you can populate the semester table using data from ROTA.

The production database is MariaDB, other database software may work but is untested at this stage.

About

A tool to help University of Queensland students calculate their required grades

https://uqfinal.com


Languages

Language:Python 33.9%Language:JavaScript 29.7%Language:HTML 17.3%Language:Less 10.1%Language:CSS 9.0%