Below is a walkthrough of the application, since it is not accessible to non-bc users or anyone without access to the Boston College Course Info API. The main focus of the design choices was to make the application fit seamlessly into existing Boston College application platforms.
First, users will be prompted to login using Google SSO with their Boston College Credentials.
Next, if they are a new user, they will be prompted to fill out the following information. They will not be able to continue without finishing the required fields.
If they are a returning user, they will instead be brought to the landing page. If they already have courses in their plan, they will see their credit progress. The progress bar is based on courses actually taken.
If they click on "Build Plan" on the menu above, they will be brought to the view of their plan. Students can have up to 3 plans to alternate between, and will receive suggestions for courses not yet taken based on their major. Additionally, they can add credits from AP classes, to account for requirements that can be fulfilled prior to starting college. Students currently must manually set classes as "Planned", "In Progress", or "Completed". The menu has been cut off from the screenshot to show the entire plan view.
Next, if the user navigates to "Search Courses", they will be able to find courses by department. In future work on this progress, it would be helpful to implement a fully-functional free-text search, though that was out of the scope of this project.
Students can add a desired course to thier plan by specifying what year and semester they'd like to include it in.
If a user is an advisor, they will have student's associated to their account in the database. They will be able to see these students' plans and toggle through them on their "Plan View" page (the selected student's plan is empty). Information about what courses the student needs was not included in the MVP from the advisor's page as they should have that info already, but this should be included in future iterations.
If a user is an administartor and would like a department-view, they will be able to see how many students have a class in their plan by semester and year, so that the University can estimate how many seats they will need for that course.
- Python 3.x installed on your system.
- Git installed on your system.
*** Since the Boston College Course Info API is not deployed, much of the code which utilized API calls will not work (anything related to course searching or course information). Feel free to connect your own API, or use a JSON file!
-
Open your terminal or command prompt.
-
Navigate to the directory where you want to clone the repository.
-
Run the following command:
git clone https://github.com/CSCI3356-Spring2024/We-Byte.git
(or use SSH)
-
Navigate to the project directory.
-
Create a virtual environment by running:
python -m venv env -
Activate the virtual environment:
- On Windows:
.\env\Scripts\activate- On macOS and Linux:
source env/bin/activate -
Make sure to add env to .gitignore
-
Ensure you are in the project directory with the
requirements.txtfile. -
Install the required dependencies by running:
pip install -r requirements.txt
-
Start the development server by running:
python manage.py runserver -
Open a web browser and navigate to
http://127.0.0.1:8000/adminto access your Django application database. Login using username: cfe and password: 1234 -
Student and advisor models have been added to loginuservalidation/models.py. You will need to add your email to the advisor or administrator section to access those views, otherwise your account will default to student upon first login.