liumcse / ntuvibe

NTUVibe is a student-run online platform committed to making information at Nanyang Technological University more open and accessible.
https://ntuvibe.com
8 stars 0 forks source link

NTUVibe Toolbar on *.ntu.edu.sg websites #111

Open zhangks98 opened 5 years ago

zhangks98 commented 5 years ago

Is your feature request related to a problem? Please describe. Students may be interested in their upcoming class schedule, accessing NTU Student Services (e.g. Degree Audit / STARS Planner) while viewing NTU pages like NTULearn, we can therefore inject a NTUVibe Toolbar on the top of these webpages. We can even let user customize hostnames to inject our toolbar.

Strategically, the toolbar can engage our users more beyond periods like course registration and exams. This can be view this as a lite version of NTUVibe. Moreover, it can be served as a candidate project for our open source plan, and demonstrate how to use our APIs without exposing too much details.

Describe the solution you'd like

  1. Implement and Expose NTUVibe User Specific APIs: 1.1 Authentication for APIs specific to one user. Each user can therefore log in to our toolbar, and receive custom responses 1.2 API for fetching user's schedule for the next 3 days (can be specified by user). The schedule can be linked to course homepage on NTULearn and venue on NTU Map (See: https://github.com/liumcse/ntuvibe/issues/110) 1.2.1. Exam schedule should also be considered

  2. Implement the toolbar using Chrome Extension, we specifically use Content Script API to inject our toolbar.

  3. Migrate extension to Firefox (https://www.extensiontest.com/). Of course, it is debatable whether we should use other user script options like Tampermonkey, albeit complicating the installation process for our users.

Additional context Inspired by the toolbar I saw on KTH homepage during my exchange in Sweden Example: https://drive.google.com/file/d/101cSfYLmvCb2hxuxw-b5YkWUK3amReVK/view?usp=sharing

liumcse commented 5 years ago

We probably need another repo for this.

zhangks98 commented 5 years ago

feels a bit intrusive, esp. this one: // Fix some NTU navbars hiding the vibe toolbar, sorry document.querySelector('#globalnav').style.position='absolute'; should we try popup instead? and giving user options to disable the toolbar is definitely needed

zhangks98 commented 5 years ago

A quick fix would be set position=‘fixed’ for vibe-toolbar and push down the original nav bar