Our system is called Pinecone, and it is a web application that will be useful for students when enrolling in classes at the university. Pinecone is an application that is used to inform NAU students and have a more efficient and user-friendly approach to class enrollment. In an attempt to improve upon LOUIE, Pinecone has a focus on simplifying and expediting the enrollment research process, allowing students to make well-informed decisions, and ultimately helping them avoid unnecessary hardships and confusion throughout the semester. It will accomplish this by displaying professor ratings for each course in addition to class distribution data, so they can see how previous students performed in the class. It also allows students to see which courses fulfill their graduation requirements and automatically creates a calendar file for students to export into a calendar of their choosing.
Download the folder titled "project_pinecone" to get a local version of the web application running on your machine.
Once you have the files downloaded, you can see a local version of the website by clicking the index.html file to interact with the website.
- Flask
- Python
Install the project by downloading our latest release, then extract the zip into a folder.
Install pip and python if you havent already.
Install Flask by running "pip install flask" in your terminal.
To run the program, traverse to the directory titled "project_pinecone" then use your terminal to execute "python run.py". If everything was installed correctly you should be able to access the project using the address given to you.
-
Installed Jest from the main website
-
Exported function Display from Prototype.js which functions as our main
-
Created a .test.js file to conduct our testing
-
In the .test.js created multiple testings to check if the object from the JS is returning the right data by comparing it to the expected data
-
Run npm test -- --coverage to run the testing
test('Professor difficulty works', () => {expect(display("CS 105", "Leverington").difficulty).toEqual('4.8/5');});
This test check if the input from the user is apropiately being matched with the object in the array using function findProfessorByLastName.
test('Professor Rating works', () => {expect(display("CS 105", "Otte").rating).toEqual('3.4/5');});
The reason behind this structure for the testing is to allow the tester to return an entire object instead of an specific part of the object to compared it with a certain value and it is also the best acommodation to test using Jest.
To deploy this on a live system, a database needs to be connected or API for Rate My Professor. The website needs to be hosted on a hosting platform as well. We chose Host Winds.
- https://www.hostwinds.com/ - web hosting on Host Winds
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Aaron Santiago - Features
- Daniel Minichetti - Initial website
- Sergio Rabadan - Initial Features
- Thomas Rhode - Features
This project is licensed under the MIT License - see the LICENSE.md file for details
- Rate My Professor
- LOUIE
- TEesting