You are browsing as a guest. Sign up (or log in) to start making projects!

CompComp AI

  • 2 Devlogs
  • 5 Total hours

Looking for competitions to join? Try CompComp AI! more details about this easy-to-use free software below: CompComp AI is an artificial intelligence powered software that runs on your browser. It provides a much easier way for students to find opportunities like competitions and meetings to learn and grow. Students no longer have to spend hours or even days just searching for something to do. CompComp AI safely collects data from users and offers tons of results in opportunities that they can pursue.

Ship #1

# Inspiration
I am a highly competitive individual, and one of my biggest passions is continually seeking ways to challenge and improve myself. However, finding appropriate platforms for this pursuit is often a broken, frustrating, and complicated process.

This personal frustration led directly to the idea for this project. After wasting significant time and missing a key deadline, I recognized a common pain point faced by students nationwide. CompComp AI was created to fill that gap—giving students everywhere a seamless way to bypass disorganized data, avoid missed deadlines, and jump straight into action.

# What it does
CompComp AI is a software platform that uses a matching algorithm to align a student’s detailed profile with current national academic competitions. Users provide defined demographics (age, grade, location), set their participation preferences (online or in-person), and enter their areas of interest. When users submit the form, the platform dynamically generates a grid of competition entries pulled in real time from a structured backend database. Each card shows the competition's name, format, location, and submission deadlines. A sidebar consistently summarizes the user's selections and profile.

# How we built it
We built the application using a frontend stack of vanilla HTML5 and CSS3, leveraging grid and flexbox for a responsive dark-themed interface, and asynchronous JavaScript (ES6) for real-time interactivity. For the backend, we implemented a serverless PostgreSQL database hosted on Supabase to store and retrieve competition data through RESTful API calls. We used Cursor, an AI-assisted development environment, to accelerate coding logic, manage UI form state, and handle data synchronization between the user-facing client and the backend database.

# Challenges we ran into
Before this hackathon, I had not integrated AI tools in software projects, and I faced difficulties with the AI’s handling of competition search logic. Initial implementations provided inconsistent filtering and output when processing form input, posing a significant technical learning challenge for AI-based query workflows.

When users entered form data, variations in input phrasing or notation disrupted the script’s matching process, occasionally producing null or irrelevant results from the Supabase-backed data. To address this, we re-engineered the evaluation logic by switching from fixed-text comparisons to a more flexible, case-insensitive string-matching algorithm, improving reliability and ensuring that students received relevant results despite minor input differences.

# Accomplishments that we're proud of
Beyond the project's technical accomplishments, I am particularly proud of how much I learned about AI and its future potential. Pushing myself to implement live backend query workflows—and realizing how AI is shaping the future of software engineering—marked a significant personal breakthrough. Turning a real challenge into a functional prototype that addresses students' needs is something I am deeply proud of.

# What we learned
This project taught me about both the strengths and risks of AI. I saw firsthand the immense productivity gains and rapid prototyping AI offers, but also the matching inaccuracies and the need for precise, human-written guardrails.

# What's next for CompComp AI
Next, we plan to improve the AI, deepen our understanding of it, and apply new knowledge to CompComp AI. We aim to upgrade from basic keyword filtering to semantic AI matching by integrating a serverless Large Language Model API. This will let the platform understand a student's natural-language biography and pair them with competitions, even if exact keywords differ. We also plan to expand the use of AI and enhance the user experience for students.

Try project → See source code →
Open comments for this post

4h 31m 38s logged

My AI reccomended Spotify as a competition to join. The filtering system clearly needs some work. (attached a screenshot)

So Serper is for browsing the internet, which means Gemini is for filtering. My platform is doing a pretty good job on browsing the internet so far (it can search pretty far to get to Spotify), so I need to either provide more context to Gemini or just instruct it better.

I do use Cursor AI to help me a lot with this project but using it, I was able to understand why this was happening.

This is how the filtering works:
Each competition sends Gemini a string full of all of its information, so Gemini can receive from 10 to 30 different strings to analyze. When it is done analyzing, it returns a list of information, like in the format: {“keep”:[0, 2, 5]}, where the computer will keep strings, or competitions, with those indexes.

So I haven’t completely solved this filtering issue yet, but I do have a solid idea.
I need to tweak the way Gemini recieves and analyzes these different strings. It’s going to have to look at things like the date, the genre (entertaiment, informative, etc.) of a page, and the contents. That also means I’m going to have to edit the strings given to Gemini, so they stop conviently leaving out the name of a website.

If anyone has any other ways I can solve this problem and more similar in the future, please tell!
Also I urge everyone to try my website and give me feedback!
Here is the link:
https://ar-bh.github.io/compcomp-ai/

Thank you!

0
1
8

Followers

Loading…