PeterPortal is a web application aimed to aid UCI students with course discovery. We consolidate public data available on multiple UCI sources on the application to improve the user experience when planning their course schedule.
🔨 Built with:
- PeterPortal API
- ExpressJS
- ReactJS
- ElasticSearch
- MongoDB
- GraphQL
- Typescript
-
Clone the
PeterPortal
repository to your local machine.git clone https://github.com/icssc-projects/peterportal-client
-
Switch to a branch you will be working on.
git checkout -b [branch name]
-
Make sure you have node version 14 or 16
node -v
-
Open two terminal windows and
cd [local directory of your repo]
.-
Running the client
cd site
- On initial start, run
npm install
to install all node dependencies. - Run the development server using
npm start
. - React development server should be running on port 3000 by default.
- On initial start, run
-
Running the server/API
cd api
- On initial start, run
npm install
to install all node dependencies. - Rename the 'dev.env' file to '.env'
- Run the development server using
npm run dev
. - Express development server should be running on port 5000 by default.
- On initial start, run
-
🎇 Our mission is to improve the UCI student experience with course planning and encourage student software developers to create open-source applications that are beneficial to the Anteater community.
We consolidate our data directly from official UCI sources such as: UCI Catalogue, UCI Public Records Office, and UCI Webreg. We routinely monitor for updates to ensure you get the most accurate information to serve on your application.
🐞 If you encountered any issues or bug, please open an issue @ https://github.com/icssc-projects/peterportal-client/issues/new
✅ Although we consolidate our data directly from official UCI sources, this application is by all means, not an official UCI tool. We stride to keep our data as accurate as possible with the limited support we have from UCI. Please take that into consideration while using this Website.
📜 There are no hard policies at the moment for utilizing this tool. However, please refrain from abusing the Website by methods such as: sending excessive amount of requests in a small period of time or purposely looking to exploit the system. This tool is here mainly to assist developers in bringing their idea to life to benefit all UCI students. Please don't ruin it for others! 🙂