This repository stores the code and data for the Boilergrades website.

Overview

www.Boilergrades.com

This repository stores the code and data for the Boilergrades website.

Development

This project uses full stack javascript with node/express serving the backend in index.js. The folder boiler-grades-web contains a Vue project which compiles into the frontend at boiler-grades-web/dist. To install a local version of the frontend run

$ cd boiler-grades-web && npm install

and then run it with

$ npm run serve

this will start a local vue-cli webserver for development.

To install and run a local version of the server run (you'll need to configure postgresql and import a local copy of the database)

$ npm install && node index.js

Make sure to change the proxy server in boiler-grades-web/vue.config.js.

Bugs

To report a bug please create a new issue.

Updating the dataset

Updating the dataset with more recent data will require filing a new Public Records request with Purdue. If interested, here is the template I used to request the data:

Hello my name is Erik Duxstad,

Address: [ADDRESS]

Email: [email]@purdue.edu

Phone Number: [NUMBER]

I am requesting the grade distributions by percent and/or letter grade, for every class and instructor for the last five years at the West Lafayette Campus of Purdue University. Please ensure the documents are FERPA compliant. I request that the information is in CSV format, and in digital format. Preferably in the form:

Course Subject, Course Number, Course Title, Course Section, Term/Semester, Primary Instructor, A+, A, A-, B+, B, B-, C+, C, C-, D+, D, D-, F, W, Average Grade in GPA.

If putting in in that form is extra work, comma separated value format with the requisite information is acceptable.

Please notify me of any expenses prior to incurring them.

Thank you, Erik Duxstad

It took about two months for Purdue to retrieve the data. Once I received the data I converted it to CSV and sanitized it with grades.py. If you request updated data from Purdue feel free to create an issue/pull request and I will add the additional data to the database.

License

This project is licensed under GNU GPL v3.

Issues
  • Feature Request - API: Being able to query (subject + course number) && instructor

    Feature Request - API: Being able to query (subject + course number) && instructor

    Right now, the API supports either a lookup of course OR instructor. I think the next iteration of the site would be to display a breakdown of each section and term within a table. Doing this would be possible if the Postgre query supported a search of both course number and instructor.

    For example, ECE 20100 has 56 sections, however, I want to see the %age of A's, B's, C's for all sections taught by Elliott, Daniel S. to see how that grade breakdown has trended. This query should then theoretically return the following JSON response:

    
    [   {
            "id": 14233,
            "subject": "ECE",
            "subject_desc": "ECE-Electrical & Computer Engr",
            "course_num": 20100,
            "title": "Linear Circuit Anly I",
            "academic_period": 201810,
            "academic_period_desc": "Fall 2017",
            "section": "013",
            "crn": 11029,
            "instructor": "Elliott, Daniel S.",
            "a": "5.6%",
            "a_minus": "3.7%",
            "a_plus": "4.6%",
            "au": null,
            "b": "7.4%",
            "b_minus": "7.4%",
            "b_plus": "7.4%",
            "c": "13.0%",
            "c_minus": "12.0%",
            "c_plus": "13.9%",
            "d": "4.6%",
            "d_minus": "1.9%",
            "d_plus": "10.2%",
            "e": null,
            "f": "3.7%",
            "fn": null,
            "i": null,
            "i_f": null,
            "n": null,
            "ns": null,
            "p": null,
            "p_i": null,
            "s": null,
            "s_i": null,
            "u": null,
            "w": "4.6%",
            "w_f": null,
            "w_n": null,
            "w_u": null,
            "blank": null
        },
        {
            "id": 14247,
            "subject": "ECE",
            "subject_desc": "ECE-Electrical & Computer Engr",
            "course_num": 20100,
            "title": "Linear Circuit Anly I",
            "academic_period": 201910,
            "academic_period_desc": "Fall 2018",
            "section": "012",
            "crn": 15694,
            "instructor": "Elliott, Daniel S.",
            "a": "4.4%",
            "a_minus": "8.8%",
            "a_plus": "4.4%",
            "au": null,
            "b": "7.4%",
            "b_minus": "5.9%",
            "b_plus": "4.4%",
            "c": "10.3%",
            "c_minus": "11.8%",
            "c_plus": "7.4%",
            "d": "5.9%",
            "d_minus": "8.8%",
            "d_plus": "10.3%",
            "e": null,
            "f": "5.9%",
            "fn": null,
            "i": null,
            "i_f": null,
            "n": null,
            "ns": null,
            "p": null,
            "p_i": null,
            "s": null,
            "s_i": null,
            "u": null,
            "w": "4.4%",
            "w_f": null,
            "w_n": null,
            "w_u": null,
            "blank": null
        }
    ]
    

    I could then deserialize this data into a table and show the values by term whenever the respective row in the component is highlighted. This would allow for further breakdown of course offerings and history by instructor.

    opened by aharonhannan 2
Owner
Erik Duxstad
Erik Duxstad
A Programming Environment for TypeScript & Node.js built on top of VS Code

Programming Environment for TypeScript & Node.js A battery-included TypeScript framework built on top of Visual Studio Code Website Kretes is a progra

Kretes 641 Jan 15, 2022
Boilerplate code for nuxtjs, vuetify & firebase auth

nuxt-vuetify-firebase-auth It’s a boilerplate code for using Nuxt JS, Vuetify with Firebase authentication. Follow the Firebase configuration & build

Suresh Kumar Majhi 3 Jan 8, 2022
Free & open-source template to create a curated directory of websites without (or with) codeFree & open-source template to create a curated directory of websites without (or with) code

CuratedStack Nocode Template ?? Free & open-source template to create a curated directory of websites without (or with) code ?? Check the demo website

Uvacoder 2 Nov 22, 2021
An e-commerce website using Vue, typescript , pinia store, and service layer design pattern.

An e-commerce website using Vue, typescript , pinia store, and service layer design pattern. Don't bother about how the repository name fits the description.,Github suggested it. I would have used an

Cheedinmar 1 Oct 29, 2021
Simple website to add Polygon Mainnet and Mumbai network to Metamask

VueJS Polygon (previously MATIC) starter If you need a clean starter with a simple connection to Web3 and Polygon start from there. You can see a prev

null 3 Aug 14, 2021
Advanced blog made with VueJS Website is not mine its just a demo

Bloggy Advanced blog made with VueJS and NuxtJS Demo Download beta from releases. Works with vercel and netlify. Designed with Windi CSS No CSS used.

Mehmet Ali 8 Dec 11, 2021
E-Commerce website mock-up built using VueJs

E-Commerce Web App Built Using: VueJs, MirageJs Project Link: https://e-commerce.goodfunfriday.com/ Description The Web App was used as a store front

Tristan Lim 0 Dec 28, 2021
A VueJS 3 starter to create Vue applications easily and quickly with Vue Router, Snowpack, TypeScript and SCSS

VueJS 3 Starter ✨ A VueJS 3 starter to create Vue applications easily and quickly with Vue Router, Snowpack, TypeScript and SCSS Architecture ├─ publi

null 0 Dec 10, 2021
Gluing Python web frameworks and Vue.js with a set of scripts... basically a wrapper :smile:

Python and Vue.js gule UPDATE At the moment project is not supported anymore, due to the rapid evolving of the JavaScript ecosystem. It was born like

Christian Strappazzon 37 Feb 26, 2021
A Vue.js starter kit that lets you focus on more programming and less configuration.

vue-starter A Vue.js starter kit that lets you focus on more programming and less configuration. A full-featured Webpack setup with hot-reload, lint-o

Rohit Rai 57 Jan 6, 2022
A WordPress theme with the guts ripped out and replaced with Vue.

VueWordPress Theme Starter Features Getting started Video Training Code Organization New to Vue? External References Features coming soon: Changelog V

Evan Agee 1.5k Jan 16, 2022
The most complete boilerplate for production-ready PWAs. With focus on performance, development speed, and best practices

vuesion The most complete boilerplate for production-ready PWAs. With focus on performance, development speed, and best practices 一个灵活的、可扩展的、自定的,已经准备好

vuesion 2.5k Jan 18, 2022
A seed project with vue, vuex, typescript & webpack with hot reloading and all the good stuf

Vue Vuex TypeScript Webpack seed This seed project includes some of the 'hot' and latests web technologies such as TypeScript, Vue, Vuex,Vuex-Typescri

Israel Zablianov 35 Jan 17, 2022
🛠 A simple template for building and publishing Vue component/library as a opensource.

vue-lib-template ?? A simple template for building and publishing Vue component/library as a opensource, Base on webpack-simple & bili ?? Feature Ligh

Pongsatorn 16 Sep 23, 2021
An ever-evolving, very opinionated architecture and dev environment for new Vue SPA projects using Vue CLI.

Vue Enterprise Boilerplate This is an ever-evolving, very opinionated architecture and dev environment for new Vue SPA projects using Vue CLI. Questio

Ben Hong 7.4k Jan 22, 2022
A CLI generator for Vue components, views and store modules

vue-generator A CLI generator for Vue components, views and store modules Supports Vue 2.x Install $ npm install -g vue-generator Usage The most basic

Hendrik-Jan de Harder 122 Jan 11, 2022
Vue project template for authoring component and their use case

vue-authoring-template Click one of this badge for more info This template is to help authoring Vue component with it's use case in story-scenario (st

Fahmi Akbar Wildana 14 Nov 15, 2021
Vite - Vue 2 starter template using composition-api and windiCSS

Vite ⚡ - Vue 2 starter template This starter template will help you to easily create a Vue2 application bundled by the lightning fast build tool calle

null 119 Jan 19, 2022