Built a student-focused, self-hosted AI assistant that answers questions about UNSW Computer Science courses using RAG, web scraping, and Gemini, for personal use and learning support
- Clone the repo
git clone https://github.com/mxnnxt/unsw-ai-helper.git
cd unsw-course-vectorizer- Set up environment variables Backend .env in project root:
GEMINI_API_KEY=your_gemini_api_key
PORT=4000
- Run with Docker
docker-compose up --buildThis starts:
- ChromaDB on localhost:8000
- Backend on localhost:4000
- Frontend (if dockerized) or run manually using:
cd frontend
npm install
npm run dev- Scrape the handbooks
node scraper/getCourses/jsThis will generate a list of all the comp couses offered by UNSW. Then do get the handbook data of each course run:
node scraper/scrapeCourse.js- Embed course data After scraping and preprocessing data:
node scripts/embedCourses.js