Project Info
This project did not submit a demo video on Devpost.
Inspiration
Deciding which classes to take can be challenging, with most students relying on word of mouth or platforms like Rate My Professor for guidance. But is there a more effective way for students to prepare, both generally and for specific courses? Enter "How Likely Am I to Pass?" – a tool designed to support both new and current students in excelling in their academic pursuits.
What it does
Our platform provides a comprehensive list of courses and professors for the current quarter. Students can access detailed information about each professor, informed by reviews from fellow students. Following this, you will complete a personalized questionnaire. This questionnaire is designed to help our AI evaluate the potential challenges you might face, based on your current academic habits and situation.
How we built it
We built it by first scraping data from all the sources that we needed to and aggregating it in a database. Then we made it accessible through API routes in our Next.js project. Next, we integrated it with our React frontend and created our Langchain prompts. Finally, we connected all parts of our full stack application and polished the frontend some more.
Challenges we ran into
Scraping problems, Next.js quirks, React and TailwindCSS learning curve, database problems, deployment problems, and AI problems.
Accomplishments we're proud of
There were many challenges that we faced, from setting up the database to changing minor styling bugs. The most good-feeling accomplishment was getting the API and Database server setup and connecting all of those, plus the AI portion, connected.
What we learned
We learned a lot of React, Next.js, and Tailwind. We also learned of ways to improve our web-application along the way.
What's next
Speeds are definitely a concern, but to have more accurate data is vital. We want to add a more personalized and detailed form for students to fill out for better prediction of their results.
This is a Next.js project bootstrapped with create-next-app.
Getting Started
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Inter, a custom Google Font.
Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
Analysis
View
Metric
- 53
- 24
- 9
- 2
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- JavaScriptIn code
- LangChainIn code
- Next.jsIn code
- PythonIn code
- ReactIn code
- SQLIn code
- Tailwind CSSIn code
- TypeScriptIn code
9 of 9 appear in the indexed code.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
58 KB
Source files
37
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
fercevik729/howlikelyamitopass
58 files · 512 KB · @ b61db70
Structure
Interface
15 files · 26%Screens, components and styles rendered to the user.
API & routing
7 files · 12%Request entry points: routes, handlers and controllers.
Application logic
8 files · 14%Domain rules, services and shared utilities.
Data & schema
6 files · 10%Schema definitions, migrations and data access.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- TypeScript77%
- Python12%
- SQL4%
- Markdown3%
- JavaScript2%
- CSS2%
- Other (1)0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 32- @emotion/react
- @emotion/styled
- @langchain/openai
- @mui/icons-material
- @mui/material
- @prisma/client
- eslint-config-prettier
- eslint-config-typescript
- husky
- langchain
- lint-staged
- next
- node-fetch
- patch-package
- react
- react-countup
- react-dom
- react-icons
- +14 more
webscraping/requirements.txt
pypi · 10- beautifulsoup4
- bs4
- certifi
- charset-normalizer
- idna
- lxml
- RateMyProfessorAPI
- requests
- soupsieve
- urllib3
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.