tasc-insight
v1.0.4
Published
Interact with TASC Software's education platform INSIGHT.
Downloads
2
Readme
tasc-insight
This is a library built for interacting with TASC Software Solution's education portal INSIGHT.
This project was made from scratch in a matter of hours, this is a finalised API for use with future projects after several different attempts and methods. Official TASC website for Insight.
- Fully typed! 😄
- Includes 100% test coverage of features.
- Uses modern and fast libraries, i.e. axios, fast-html-parser
Background
- This was initially started because Insight looks like utter garbage, and I can say for certain most of the developers at TASC really threw Insight together on their first try and didn't even bother with it.
- The version of Insight in production, more specifically the one my school is running:
- has unminified code hosted on their servers
- has inline css and js in pretty much all pages
- uses ASP.NET
- looks plain ugly, no effort was made to make any of it look good (uses bootstrap too)
- this would be fine for a developer site, but this is user facing
- takes forever to load most pages, see test results
- sends HTML code inside of a JSON object to display on timetable
- has inconsistent dates everywhere, i.e.
5|6|2000
for fetching timetable week
Usage
Install using yarn or npm.
# using yarn <3
yarn add tasc-insight
# using npm
npm install tasc-insight --save
All you need is the Client class which is exported from the root.
import { Client } from 'tasc-insight';
let client = new Client('https://path/to/insight');
// all methods are async
// everything has typescript typings
await client.login('username', 'password');
await client.details();
await client.assignments();
await client.timetable();