A quick, responsive general weighted average calculator for the modern web. Built with Vue.js and Typescript, by a student, for students.
- GWA calculation
- Support for up to 5 sets of 20 subjects
- Grade transmutation and preset subjects for Philippine Science High School students
- Share subject sets and calculate with your friends through in-app QR codes
- Progressive Web App (can be installed offline)
To build the calculator on your machine, you will need a working installation of Node.js.
Once you have Node.js installed, clone the repository locally and install the required Node.js modules (the following steps are for Linux/macOS):
git clone https://github.com/jareddantis/gwa-calc.git
cd gwa-calc
npm install -g @vue/cli
npm install
You are now ready to make your changes to the files inside src/
. Preview your changes in your browser:
npm run serve
When you're done, build the calculator:
npm run build
Then serve the resulting dist
directory in your SPA compliant web server of choice.
The calculator is automatically built and deployed with Netlify to make updating and testing easier.
If you have a suggestion for the calculator, you can open an issue from the tab above or make a pull request on this repository if you have some code to share!
- @eligrey/FileSaver.js
- @FortAwesome/Font-Awesome
- @google/material-design-icons, /workbox
- @localForage
- @nimiq/qr-scanner
- @pieroxy/lz-string
- @soldair/node-qrcode
- @SortableJS
- @vuejs
- @vuetifyjs
gwa-calc: The quick, responsive GWA calculator for PSHS and college students.
Copyright (C) 2019-2020 Aurel Jared Dantis
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.