Skip to content

fullstack scheduling app using external API openAI embedding for natural language search and peterportal API for UCI database information. Created with PostgreSQL, Express.js, React.js, and Node.js tech stack (PERN) w/ Pinecone Vector DB for embeds + Chakra for UI.

Notifications You must be signed in to change notification settings

Xire7/uci-scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Zot N' Schedule (uci-scheduler) 🔥💖

Zot N' Schedule (name still pending) helps a student plan out their four years using a natural language search engine wired to UCI's course data.

Video Walkthrough 🚀

Video Walkthrough:

Tech Stack 💻⛄

  • PERN Stack (PostgreSQL, Express, React, Node)
  • Front-End: React.js

    • Chakra React & Icons UI
    • Fetch API
    • React Router
  • Back-End: Node.js

    • PostgreSQL
    • Express.js
    • PineconeDB
  • External APIs:

    • OpenAI Embeddings API
    • PeterPortal Course Info API

This was a nice project to work on to solidify CRUD topics, backend work with PostgreSQL and express routing, as well as node.js fetch API calls and working more with react routing and states! Definitely many things to fix/touch-up too.

To-do List (MANY bugs/QoL to fix too!) 🌪️

  • [X] Add a prerequisite tree check!

  • [ ] Scale the website to allow other users to access databases and be able to schedule simultaneously without unauthorized interferences

  • figured out how to rerender when adding classes and removing classes without using a hard refresh through useNavigate
  • also found out a way to add a space between DEPT and ID
  • fixed how inaccurate the database data fetch is, prioritize keywords first in ID if they are retrieved from vectorDB, but that includes adding space between DEPT and ID
  • add plus buttons to every card which automatically procs the drawer and has those filled out except for course name
  • add a color picker for the class tags
  • title should also be customizable by the user for each list, and each list should ask for a year timeframe
  • add a description to the drawer when there are no search elements loaded
  • add description to the bottom when there are no courses initially chosen
  • how does the ref targetting work for the popover tags?

Kudos 🎨

inspired by Zot4Plan and deezy#2930's zotsearch. check them both out here:

https://github.com/zot4plan/Zot4Plan

https://github.com/dannykd/zotsearch

About

fullstack scheduling app using external API openAI embedding for natural language search and peterportal API for UCI database information. Created with PostgreSQL, Express.js, React.js, and Node.js tech stack (PERN) w/ Pinecone Vector DB for embeds + Chakra for UI.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published