NExUS
Classify an exoplanet candidate from its transit parameters, then fly around the system in the browser.
- Result
- Winner, NASA Space Apps Challenge 2025, Paris edition · 48 hours · team of 5
- When
- October 2025
- Stack
- Python, AutoGluon (CatBoost, XGBoost, LightGBM, ExtraTrees, RandomForest, KNN, NeuralNetTorch, LinearModel), Flask, WebGL
What it does
- Data: Kepler, K2 and TESS candidate catalogs merged into one schema — 12,655 rows, balanced between confirmed planets and false positives; 15 features.
- Model: AutoGluon ensemble of 8 base models with weighted stacking. F1 92.6%, decision threshold 0.436, adjustable from the UI and the API.
- API: Flask, three routes (
/predict,/fields,/health), physical bounds validation, lazy-loaded predictor. - Rendering: no three.js — the 3D system view is ~24 KB of JavaScript written against the raw WebGL API.

