Skip to content

subwaymatch/bdi475-course-site

Repository files navigation

BDI 475

Codacy Badge DeepScan grade

Introduction to Data Analytics Applications in Business

This is a course site for UIUC's BDI 475 - Introduction to Data Analytics Applications in Business.

Preview (Development) and Production Branches

  • development branch is used for all development activities. development branch can be viewed at https://bdi475-course-site.vercel.app/.
  • main branch points to the the production site (https://bdi475.org). Any pushes to the main branch will trigger a deployment through Vercel.
  • production branch is not used anymore.

High-level Architecture

bdi475_course_site_diagram

Changelogs

Fall 2021

  • Updated Pyodide to version 0.18.1 to support Safari and mobile browsers.

  • Updated Next.js to v12 for webpack v5 support, faster builds, and web fonts optimizations.

  • Updated Bootstrap to v5. No noticeable change other than a few breaking classnames.

  • Switched all Google Firebase services (auth, firestore, functions) to Supabase because:

    • Students in China could not use the site without using a VPN since Google services are blocked in China.
    • Firebase is proprietary. Supabase is open-source.
    • Pagination with Firestore is unnecessarily complicated.
    • Supabase uses Postgres as a backing database. This makes it easy to make joined queries.
    • Supabase provides a type generator that works seamlessly with Typescript.

Link to Spring 2021 Version

Spring 2021 deployment uses Firebase Auth and Firestore. The link here is only for an archival purpose.

https://bdi475-course-site-fgr8lwjf7-subwaymatch.vercel.app/

Roadmap 🦜

These are features I'm looking to add.

  • Multiple choice questions (work-in-progress)
  • SQLite coding challenge support using sql.js
  • Full page coding challenge
  • WebAssembly-based Python playground with Pandas/Numpy support
  • MDX support
  • Live polling feature
  • Jupyter/Colab autograder using AWS lambda

Local development

Clone the repository and run the development server using one of the commands below:

npm run dev
# or
yarn dev

Open http://localhost:3000 with your browser to see the result.

Built with

next-vercel-illustration

This site is built with Next.js and is continuously deployed to Vercel.