Skip to content

[Project Showcase] ExoVault – A Cinematic NASA Exoplanet Archive Explorer #1114

@johnnylemonny

Description

@johnnylemonny

ExoVault – A Cinematic NASA Exoplanet Archive Explorer

Hi again @florinpop17 and community!

I’m thrilled to showcase my second "Advanced" project completion: ExoVault, an implementation of the NASA Exoplanet Query challenge.

While the original idea focuses on querying, I decided to turn it into a high-performance Discovery Engine using a modern static-first architecture.

🔗 Project Links

🚀 Key Technical Highlights

  • Architecture (Astro 6 + React 19): Used Astro's "Islands Architecture" to deliver a zero-JS baseline with interactive React components only where needed.
  • Data Pipeline (1MB vs 100MB): Instead of querying the raw NASA API on every client request, I built a custom Node.js pipeline that fetches, cleans, and optimizes the NASA Planetary Systems (PS) archive into ultra-compact JSON fragments during build time.
  • Side-by-Side Comparison: Implemented a complex "Comparison Vault" where users can analyze multiple exoplanetary systems across metrics like discovery method, stellar magnitude, and orbital period.
  • Glassmorphic Design: A cinematic, space-themed UI featuring backdrop-blur effects and 60fps transitions that make astronomical data feel premium.
  • Automated Living Archive: A weekly GitHub Action "CRON" job that pulls new NASA discoveries, rebuilds the data cache, and redeploys the site automatically.

✨ User Stories + More

  • Advanced Search/Filter: Filter by discovery year, planet type, and stellar properties.
  • Detailed System Views: Deep dive into individual planetary metrics.
  • Responsive & Accessible: Fully mobile-optimized with WCAG 2.1 AA compliance.

🧠 Reflections

The main lesson here was performance optimization. Browsing a database of 5000+ planets can be slow; by using Static Site Generation (SSG) and pre-calculating the data, I achieved near-instant navigation that feels like a native app.

Thank you for providing the inspiration for this astronomical challenge!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions