This repo contains what was at its time by far the fastest way to complete BU registration, enabling automation ahead of time.
To build this project you must have python and flutter installed on your system. To run the project go to the ui folder and type the command:
- $flutter run lib/main.dart
(The backend is in Python, an interpreted language, so no building is required)
Open the flutter app and run the backend server.
Flutter
- open the built app available for Windows, Android, or iOS -- for developement, install Flutter and build main.dart, using
flutter pub get
to get dependencies
Backend
cd backend
py main.py
ornohup py main.py &
Seebackend\README.md
for more details on running the backend server
Built in Flutter
- User login page
- Can search for and add courses, stored locally
- Schedules registration, sent to Flask API on backend
Built in Python with Flask to receive API info
- Ability to send requests from backend to Student Link to make the registration requests
- User, Semester, Course data structures and url param generator functions defined in
user.py
andcourses.py
- User, Semester, Course data structures and url param generator functions defined in
- API using Flask
- Async scheduler and Flask server in
main.py
- Storing all SelectIt IDs for every course
- Course database handled via
coursedb.py
- Web scraping via Selenium
- Scrapes from the value token of the input tag defining the checkbox i.e. we use the checkbox to get SelectIt info
- Course database handled via
- Nathan Clark: nbclark@bu.edu
- Sadman Kabir: kabirs@bu.edu
- Oluwaseun Angelo Soyannwo: seun@bu.edu
- Peter West: flibble@bu.edu
- Cynthia Young: mcyoung@bu.edu