mirror of
https://github.com/Xevion/banner.git
synced 2026-01-31 06:23:37 -06:00
a507e7698fec1eeaa88a7bb12288d682d5ea65ee
banner
A discord bot for executing queries & searches on the Ellucian Banner instance hosting all of UTSA's class data.
Feature Wishlist
- Component Pagination
- RateMyProfessor Integration (Linked/Embedded)
- Smart term selection (i.e. Summer 2024 will be selected automatically when opened)
- Rate Limiting (bursting with global/user limits)
- DMs Integration (allow usage of the bot in DMs)
- Class Change Notifications (get notified when details about a class change)
- ICS Download (get a ICS download of your classes with location & timing perfectly - set for every class you're in)
- Multi-term Querying (currently the backend for searching is kinda weird)
- Full Autocomplete for Every Search Option
- Metrics, Log Query, Privileged Error Feedback
- Search for Classes
- Major, Professor, Location, Name, Time of Day
- Subscribe to Classes
- Availability (seat, pre-seat)
- Waitlist Movement
- Detail Changes (meta, time, location, seats, professor)
timeStart, End, Days of WeekseatsAny change in seat/waitlist datameta
- Lookup via Course Reference Number (CRN)
- Smart Time of Day Handling
- "2 PM" -> Start within 2:00 PM to 2:59 PM
- "2-3 PM" -> Start within 2:00 PM to 3:59 PM
- "ends by 2 PM" -> Ends within 12:00 AM to 2:00 PM
- "after 2 PM" -> Start within 2:01 PM to 11:59 PM
- "before 2 PM" -> Ends within 12:00 AM to 1:59 PM
Analysis Required
Some of the features and architecture of Ellucian's Banner system are not clear. The follow features, JSON, and more require validation & analysis:
- Struct Nullability
- Much of the responses provided by Ellucian contain nulls, and most of them are uncertain as to when and why they're null.
- Analysis must be conducted to be sure of when to use a string and when it should nillable (pointer).
- Multiple Professors / Primary Indicator
- Mulltiple Meeting Times
- Meeting Schedule Types
- AFF vs AIN vs AHB etc.
Description
Releases
1
Languages
Rust
58.5%
Svelte
26%
TypeScript
14.4%
CSS
0.6%
Dockerfile
0.3%
Other
0.2%