About the project

Project Supernova — Neutrinos arrive first. We aim telescopes before the light.

When a nearby star dies, a neutrino burst can reach Earth minutes to hours ahead of optical shock breakout. We turn that head start into a sky localization, a ranked list of likely progenitor stars, and live alerts observers can act on — before the flash.

Try it: https://supernova.lylinks.com
Try with SpaceX theme: https://supernova.lylinks.com/spacex
Code: github.com/kejiwuxian/Breakout

Inspiration

Core collapse releases neutrinos promptly; the explosion shock still has to climb through the stellar envelope before light escapes. That gap is the race: localize, prioritize known massive stars, and get coordinates onto real instruments while the optical breakout window is still open.

Class-dependent models put that window roughly from tens of seconds (compact Wolf–Rayet) to about a day (some red-supergiant cases) — estimates, not countdown clocks for any one star:

$$ t_{\mathrm{breakout}} \sim \begin{cases} \mathcal{O}(10\ \mathrm{s}) & \text{compact WR} \[0.25em] \mathcal{O}(1\ \mathrm{day}) & \text{some RSG} \end{cases} $$

If we wait until humans already “know” the supernova is happening in the optical, that head start — and often the breakout window — is already gone.

What it does

  1. Ingests supernova / high-energy neutrino alerts (cached IceCube & galactic CCSN replays offline; live GCN / SNEWS-style channels when configured).
  2. Localizes on an all-sky SVG Mollweide map (Yale Bright Star Catalogue 5th Ed. field) and ranks stars inside the area of interest against a precomputed literature inventory.
  3. Pushes ranked ICRS coordinates to anyone who Subscribes to events — campus scopes and backyard instruments included — over a live WebSocket.

Honesty rules we ship with the product

  • No invented bibcodes.
  • Simulated runs wear a Simulated badge (simulated=true in JSON).
  • Community packages are follow-up helpers, not official GCN notices.

How we built it

Surface Role
SVG skymap Yale BSC5 all-sky background; curated ∪ outer-AOI ranked overlay; dual red outlines; wheel zoom / drag pan
Progenitor ranking Offline inventory + enrich-replay; CandidateScore v1.1; optional Grok scoring when cached or keyed
Subscribe to events Open access + refresh tokens → /ws/subscribe; honesty labels preserved
Replay scenarios Galactic CCSN, IceCube-170922A and siblings under data/cache/
Actions / voice LCOGT / ToO / GCN draft builders; optional Grok Voice mission control

Stack: FastAPI + Vite/TypeScript, offline progenitor inventory + optional Grok ranking, WebSocket community alerts. Mission UI: frontend/ on port 5173. Local API typically 127.0.0.1:8000. Public demo tunnels via Cloudflare (BREAKOUT_PUBLIC_BASE_URL / scripts/run_public.sh in the developer doc).

Built with Cursor + Grok Bot for the weekend build, planning, and announcer track (Grok Voice when keys allow).

Why Cal Hacks / SpaceXAI

  • Clear problem → working demo → measurable surface (skymap, ranking, subscribe).
  • End-to-end loop: alert → localization → ranked stars → actionable feed.
  • Latency is the product: neutrino lead time becomes follow-up urgency.
  • Coordinates on the wire for human observers — not a slideshow.

What’s next

Live channel hardening, broader inventory coverage, and sponsor integrations behind flags that default off until scripts/mvp_gate.sh prints PASS. Deeper index: docs/post-mvp.md. Science judge notes: docs/BREAKOUT_judge_science_QA.md.

Built With

Share this project:

Updates

Submission history