Inspiration

BU has thousands of researchers and alumni, but there's no easy way to see who's connected to whom. Students looking for a mentor, a lab, or an industry contact usually rely on luck. We wanted to make those connections visible, with every one backed by a real public record.

What it does

6degrees maps how BU researchers and alumni are connected through the papers they write together and the grants they share.

  • Search a topic (like "dementia" or "medical imaging") to see the BU people working on it, with verified alumni closest to the center.
  • Search a person to see who they work with, and click any connection to see the paper or grant behind it.
  • "How are we connected?" finds the shortest chain of real collaborations between two people.
  • Profile cards show someone's BU degree, current position, citation stats, and links to their ORCID, OpenAlex and their own websites.

## How we built it

  • Data pipelines (Python): papers, co-authors and topics from OpenAlex and Semantic Scholar; grants from NIH RePORTER; BU degrees from public ORCID records and OpenBU theses; profile details from ORCID and OpenAlex. Each module writes to one shared JSON schema, and a merge step combines them into a single validated graph.
  • Spec-driven with Kiro: specs, steering rules and hooks kept four people building against the same data contract.
  • Frontend (React + Cytoscape): a people-first network colored by BU status, built on our Lovable-designed UI. The path finder is a breadth-first search over people, where two people are linked if they share a paper or grant:

$$ d(u, v) = \min {\, k : u = p_0 \sim p_1 \sim \dots \sim p_k = v \,}, \quad k \le 6 $$

## Challenges we ran into

  • A data source disappeared mid-build. The PatentsView patent API was retired in March 2026, so we built an importer for USPTO's bulk-file replacement and shipped NIH grants first.
  • Identity resolution. The same person shows up in different databases under different IDs. Name matching alone mixed people up, so we only merge records on a unique identifier like ORCID.
  • Keeping the graph readable. Our first view mixed papers, topics and people into one tangle. Redesigning it around people made it usable.
  • Respecting data rules. Some useful sites (BU Profiles, LinkedIn) don't allow automated access, so we link to them instead of scraping them.

## Accomplishments that we're proud of

  • About 6,300 people, papers, topics and grants in one graph that validates with zero errors, where every connection links to its source.
  • Verified BU alumni went from 4 to 94 by checking ORCID education records and 27,000+ OpenBU theses.
  • Property-based tests caught a real bug (IDs with a hidden trailing newline) that 81 example tests had missed.

## What we learned

  • "Missing is fine, made up is not." Writing this rule down first shaped every decision. For example, someone is only labeled a BU alumnus when a source states their degree, never just because they published from a BU address.
  • Unique identifiers beat clever matching. ORCID did more for accuracy than any name-matching logic.
  • Design for the question people actually ask. Students want "who should I talk to?", not a database of records.

## What's next for 6degrees

  • Patents: turn on the USPTO importer once we have an API key.
  • Beyond AI in healthcare: expand from our demo topic to all BU research areas.
  • Smarter identity matching: let people who are already merged also link to their NIH grant records.
  • Let people add themselves: user-submitted profiles, so alumni can claim and enrich their own entry.

Built With

Share this project:

Updates

Submission history