Try PeerPear yourself at: https://peerpear.vercel.app/
The dependencies in this project are managed through poetry.
-
Populate environment variables: Create a
.envfile in thesrcfolder by referencingsrc/.env.example -
Install poetry following: https://python-poetry.org/docs/
-
Create venv on your local:
poetry config virtualenvs.in-project true -
Install all dependencies with
poetry install -
Optionally, add your own dependencies with
poetry add <dependency group>to update the .toml and poetry lock files. -
Run the main backend app locally using
cd srcandpoetry run python wsgi.py
-
Populate environment variables: Create a
.envfile in thepublicfolder by referencingpublic/.env.example -
Navigate to the
publicfolder:cd public -
Install all dependencies with
npm install(oryarn,pnpm,bun) -
Run the development server with
npm run dev(oryarn dev,pnpm dev,bun dev) -
Open http://localhost:3000 with your browser to see the result.
Our project's backend is currently hosted on Heroku, and frontend on Vercel. Our DB and image storage bucket uses Supabase services.
You must be authenticated via Princeton University's CAS Authentication System to log in as a student or an organization user. WIP: adding universal authentication methods.
This project uses Google Gemini 2.5 Flash-Lite for the LLM client. To receieve an API KEY to run PeerPear locally, please visit: https://aistudio.google.com/ and set up your project.
Before contributing to the backend services, please read this document in detail.

