Inspiration
I'm a first-generation college student at Cal State East Bay, and when I was starting out, I had no idea where to look for STEM scholarships, programs, or communities that were actually built for students like me. The information was scattered across dozens of websites, buried in PDFs, or hidden behind organizations I'd never heard of.
I kept thinking: what if there was one place that just asked who you are and showed you what exists?
Student Nova is that place. It's the tool I wish I'd had when I was figuring out how to pay for college, find mentorship, and build a network in STEM.
What it does
Student Nova helps underrepresented and first-generation students across the SF Bay Area discover STEM opportunities built for them.
Students answer a few optional questions about who they are, where they live, and what they're interested in — ethnicity, age, first-gen status, income level, interests, and city. Student Nova then surfaces relevant opportunities across three lanes:
- Financial: Scholarships and STEM-specific aid (Cal Grant, Gates Scholarship, HSF, QuestBridge, SHPE, and more)
- Educational: Free workshops, summer programs, and transfer support (SMASH, Hack the Hood, Hidden Genius Project, California MESA, and more)
- Professional: Orgs and networks for underrepresented people in STEM (ColorStack, NSBE, SACNAS, /dev/color, Latinas in Tech, and more)
Each result includes:
- A personalized "Why this may fit" explanation
- Links to the official site for verification
- Badges showing community relevance (first-gen friendly, Bay Area, scholarships, mentorship, etc.)
Student Nova also includes Nova Guide, an AI assistant that helps students understand their matched opportunities and plan next steps — but it never claims eligibility. It's designed as planning support, not a decision system.
How we built it
Frontend: Next.js 16, React, TypeScript, Tailwind CSS. The UI is designed to feel warm and welcoming — calm gradients, generous whitespace, smooth animations. Every field is optional because asking about income, ethnicity, and first-gen status is sensitive, and I wanted students to feel safe exploring without pressure.
Seeded Data: I hand-curated ~40 real STEM opportunities across the Bay Area (Oakland, SF, Berkeley, San Jose, Hayward) — scholarships like Gates and QuestBridge, programs like SMASH and Hack the Hood, and orgs like NSBE and SACNAS. Each entry is tagged by city, lane, community, age, and support type. I verified every URL. This isn't scraped data — it's real, accurate, and linked.
Matching Engine: Deterministic matching logic that ranks opportunities by relevance: first-gen status, community, interests, location, and age. No black-box scoring — students can see why something matched.
Redis (Sponsor Integration): Redis powers two features:
- Match caching — repeated searches don't recompute the same rankings
- Aggregate signals — anonymous trends like popular interests and trending opportunities (no personal data stored)
This goes "beyond caching" by using Redis as a real-time context layer for the app, which aligns with the Redis prize criteria.
Nova Guide AI: An OpenAI-powered assistant that reads matched opportunities and generates a personalized action plan. It's instructed to never claim eligibility — only to explain why opportunities may fit and suggest next steps. The prompt enforces safe language ("may be relevant," "worth reviewing") instead of guarantees.
Sentry (Sponsor Integration): Error monitoring and tracing to catch issues before they break the demo.
Browserbase (In Progress): Exploring Browserbase as a living-directory refresh system — it would visit official opportunity pages, extract updated descriptions and deadlines, and keep the directory current without manual updates.
Challenges we ran into
Redis connection hell. I spent hours fighting TLS mismatches and network blocks on the venue WiFi before realizing the venue's guest network was dropping non-standard ports. Switching to eduroam fixed it, and once Redis connected, redisPowered: true was one of the best feelings of the weekend.
Scope creep vs. safety. My first instinct was to build an eligibility engine — "you qualify for CalFresh," "you're eligible for this scholarship." But the more I thought about it, the more I realized that's dangerous. If my seeded data is wrong and I tell a low-income student they qualify for aid they don't actually qualify for, that's worse than no tool at all. So I pivoted to an informational directory instead — "here are opportunities that exist, here's why they may fit, verify requirements yourself." That constraint actually made the tool better, because it's honest about what it can and can't do.
Curation is harder than coding. Writing the matching logic took an hour. Hand-curating 40 accurate, tagged, verified opportunities took four. But that curation is what makes this real — judges can click any link and land on a real org's real page. That's the difference between a hackathon demo and a tool someone could actually use.
Accomplishments that we're proud of
- Built a tool I actually wish existed. This isn't a toy problem — this is something I would have used, and I know other first-gen students at CSU East Bay would use it too.
- Seeded real, verified data. Every opportunity is a real org with a real URL. No placeholders, no "example.com" links.
- Safe, honest design. The tool never claims eligibility or guarantees acceptance. It uses soft, advisory language and always tells students to verify requirements. That's harder to build than a confident-sounding black box, but it's the right thing to do.
- Redis working in production. After the connection battle, seeing
redisPowered: truein production felt like a win. - A warm, welcoming UI. I wanted this to feel approachable, not intimidating. Calm colors, optional fields, personalized explanations. It's designed to feel like a guide, not a form.
What we learned
- Curation beats scraping at a hackathon. Real, accurate, hand-picked data is more impressive than a half-broken web scraper.
- Constraints make better products. Deciding not to claim eligibility made the tool safer, more honest, and more useful.
- Your story is your advantage. I'm a first-gen CSU East Bay student building the tool I wished I'd had — that's not a weakness, it's the whole point.
- Sponsors care about depth, not breadth. Redis isn't just "caching API responses" — it's powering match caching and aggregate signals. Browserbase isn't bolted on — it's designed as a living-directory refresh system. Judges reward thoughtful integration over feature count.
What's next for Student Nova
- Browserbase live refresh — visiting official opportunity pages to extract updated deadlines, eligibility changes, and new programs
- Expanded coverage — more Bay Area cities, more opportunities, and eventually statewide CA
- Mentorship pathways — connecting students not just to orgs, but to real people who can guide them
- Community feedback loop — letting students flag outdated info or suggest missing opportunities
- AI evaluation with Arize — monitoring Nova Guide outputs to make sure the assistant stays helpful, accurate, and safe
Student Nova isn't trying to replace counselors or make decisions for students. It's trying to make the first step — discovering what exists — a little bit easier.
Built With
- browserbase
- next.js
- openai
- react
- redis
- sentry
- tailwindcss
- typescript
- vercel

Log in or sign up for Devpost to join the conversation.