About Pathlight

The Inspiration

Pathlight started with a simple problem: finding a good opportunity should not require searching dozens of websites and already knowing exactly where to look.

Students discover opportunities across completely separate ecosystems hackathons, competitions, grants, scholarships, fellowships, research programs, internships, conferences, travel-funded programs, and more. Many also encounter eligibility restrictions based on age, education level, academic year, country, field of study, or funding requirements. We wanted to build something different: a place where a person could describe their situation and goals, and Pathlight could help them discover opportunities they may never have found otherwise.

We also noticed that many opportunity platforms are heavily centered around particular age groups, education stages, or disciplines. Pathlight is designed to be major-agnostic and opportunity-type agnostic. An opportunity can have a field-specific requirement when the opportunity itself requires it, but Pathlight does not assume that a user's major determines what they are allowed to discover.

What We Built

Pathlight is a universal opportunity-discovery engine that combines opportunity data, eligibility evaluation, transparent matching, and goal-aware discovery.

Instead of simply asking:

What opportunities exist?

Pathlight tries to answer:

Which opportunities are actually relevant to me, and why?

The application includes:

  • A normalized opportunity data model for representing different types of opportunities consistently.
  • A deterministic eligibility engine that evaluates requirements such as age, citizenship, education, academic standing, field, budget, and modality.
  • A transparent matching system that breaks a match score into understandable dimensions instead of producing an unexplained number.
  • Goal-aware discovery that can surface related opportunity types based on what the user is ultimately trying to accomplish.
  • Search, filtering, sorting, deadline, funding, modality, eligibility, and saved-opportunity functionality.
  • Profile management so recommendations can adapt to different users.
  • JSON ingestion and dataset management for expanding opportunity coverage.
  • A connector architecture designed so additional opportunity sources can be integrated without rebuilding the core discovery engine.
  • A source registry that keeps track of where opportunity information comes from and how it is intended to be connected.

How We Built It

Pathlight was built as a React and TypeScript web application using Vite and Tailwind CSS.

The core architecture separates the opportunity data layer from the eligibility, matching, discovery, and interface layers. This allows the same discovery engine to work across many different opportunity categories rather than building a separate system for scholarships, hackathons, competitions, or internships.

We also implemented a connector abstraction and an initial Grants.gov connector as an example of how external opportunity sources can eventually be brought into the normalized Pathlight system. Importantly, we distinguish between a connector being implemented and a source being successfully verified. During development, the Grants.gov live API request returned HTTP 403 from our development environment, so we do not represent that source as live-verified in the submitted version.

What We Learned

One of the biggest lessons was that opportunity discovery is not simply a search problem.

A useful opportunity platform needs to understand eligibility, user constraints, goals, funding, deadlines, source provenance, and the relationships between different opportunity types.

We also learned the importance of deterministic and explainable systems. Instead of hiding the reasoning behind a recommendation, Pathlight makes the matching process inspectable so users can understand why an opportunity fits or why it does not. Building the project also taught us how important architecture becomes when a product is intended to grow. Rather than hard-coding every source directly into the interface, we designed the system around normalized data and connectors so coverage can expand incrementally.

Challenges

The biggest challenge was balancing ambition with the limited time available.

Our original vision could eventually include thousands of opportunities across many categories and many different sources. Building and maintaining all of those integrations at once would not have been realistic for this challenge.

We therefore focused on building the foundation first: a working discovery engine, deterministic eligibility, transparent matching, goal-aware discovery, structured opportunity data, and an extensible connector architecture. Another challenge was ensuring that Pathlight remained genuinely universal rather than accidentally becoming centered around one academic discipline. We revised the profile and discovery architecture so that the system is designed for students and opportunity seekers across disciplines, while still respecting field-specific requirements when an individual opportunity has them.

The result is a functional foundation that can grow from a curated dataset into a much broader opportunity ecosystem over time.

What's Next

Pathlight's long-term goal is to progressively connect major opportunity ecosystems by category—starting with areas such as competitions, hackathons, grants, scholarships, fellowships, and funded programs, and eventually expanding into research, internships, jobs, exchanges, conferences, and travel opportunities.

The goal is not simply to create a bigger directory. The goal is to make opportunity discovery more accessible, more personalized, more transparent, and much harder to miss.

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Pathlight — Universal Opportunity Discovery Engine

Built With

Share this project:

Updates

Submission history