Giter Club home page Giter Club logo

blaine-t / selfscheduler Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 25.87 MB

selfscheduler is a project developed to improve the usability and features of the existing collegescheduler used at many universities across the US. To do this we reverse engineered the socket.io connections going to and from the server to develop a 1:1 compatible implementation that allows us to include advanced features such as autoenroll

License: GNU General Public License v3.0

TypeScript 57.39% Dockerfile 1.22% EJS 40.99% JavaScript 0.40%
college node scheduler socket-io typescript

selfscheduler's Introduction

Description

selfscheduler is a project developed to improve the usability and features of the existing collegescheduler used at many universities across the US. To do this we reverse engineered the socket.io connections going to and from the server to develop a 1:1 compatible implementation that allows us to include advanced features such as autoenroll, our solution to making sure that you get that one class that you need for the ultimate schedule. We also implemented a proxy between collegescheduler and the user to ensure that the users cookie is always available for quick schedule changes.

Powered By

       Node.js is the runtime we decided to use for this project because of its long standing reputation in the programming world
       Typescript - Most if not all of the backend code is written in typescript. TS was chosen over javascript because for a complex project ensuring that types remained consistent throughout was crucial to having less error prone code. While it was a decent learning curve it definitely made development easier especially towards the end
       Express.js was used as a minimalist web framework. It gave us low enough capabilities without going too low that it was hard to develop with
       EJS was used as a minimalist template framework. It allows for the fine development of HTML with the niceties of server side rendering which was crucial for this project to be lightweight
       Socket.io - used to interface with shopping cart and enrollment actions in collegescheduler

Special Thanks To

       Original College Scheduler Proxy - Helped us implement the proxy part of the program with speed
      sorttable - Allowed us to create easy to sort tables with minimal effort

Contributors

       anton-3
       blaine-t

selfscheduler's People

Contributors

blaine-t avatar anton-3 avatar dependabot[bot] avatar

Stargazers

Loc Nguyen avatar Kieran McWilliams avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.