Inspiration
My main inspiration for creating PAL was that I had access to a similar resource during my time at Texas A&M, and it helped me significantly. Oklahoma State has a great in-person support network, but lacks many online resources.
What It Does
PAL stands for Past Assessment Library.
Think of it as a search engine for exams, quizzes, essays, etc. that professors have given over the years.
How I Built It
PAL is built using Next.js + React, and is connected to a Supabase database where PDF files and metadata are stored.
Stored in Supabase:
- PDF objects + paths to the Supabase bucket
- A table for student requests for new classes
- A table that flags users as admins
There is a hidden admin panel in the site where I can easily upload/delete PDFs.
The main page includes filtering by course code, course number, and professor; along with ordering options (course code, professor, or date). The site queries based on user-defined search settings, displays results as cards, and allows a simple click-to-download experience.
Challenges I Ran Into
The biggest challenge was ensuring security and preventing abuse. Adding login to the admin panel was a start; but not enough. The major solution was adding Cloudflare Turnstile protection. Now, if someone wants to log in or submit a request, they must prove they’re not a bot.
Another challenge was the UI. After the site was functional, making it visually appealing took nearly half the time spent on the project; polishing the design and creating a clean, reliable user experience.
Accomplishments I'm Proud Of
The website is nearly finished and truly shippable; after this hackathon, I could literally approach professors tomorrow and present it as a ready-to-use product. A lot of students who demoed PAL said they would actually use it; and that made the project feel worthwhile. It solved a real problem.
What I Learned
This project taught me how to set up a full website using Next.js + React, how to integrate with Supabase, how to manage auth/admin controls, and how to work with Tailwind CSS to produce a simple but effective UI.
What’s Next for The PAL @ Oklahoma State
The backend is mostly complete; the next steps involve further UI refinement and adding some small additional features. The main upcoming milestone will be taking this to professors to gain support; with the goal of making PAL a fully adopted and “officially supported” resource for OSU students.
Built With
- next.js
- react
- supabase
- typescript
Log in or sign up for Devpost to join the conversation.