Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

3D Exoplanet Explorer 🌌

Overview

3D Exoplanet Explorer is an interactive web application that visualizes thousands of real exoplanetary systems discovered by NASA. Built with React and Three.js, this tool allows users to navigate through a 3D star field, select host stars, and explore detailed planetary systems with procedurally generated textures.

This Project is Developed for the NASA Space Apps Challenge 2024 by:

B. Ratna Babu, SK. Khaja, C. Sai Tejaswini, T. Eswar Sai Nandan, L. Kalyani, and U. Mounika.

Features ✨

  • Immersive 3D Star Field: Navigate through thousands of real exoplanet host stars
  • Detailed Star Information: View distance, temperature, discovery year, and other properties
  • Planetary System Visualization: Explore planets with accurate orbits and physical characteristics
  • Dynamic Planet Textures: Procedurally generated unique textures for each planet
  • Modern UI: Responsive interface built with React and Material UI
  • Live NASA Data: Real-time data from NASA's Exoplanet Archive

Demo

Screenshot 2025-07-21 221735 Screenshot 2025-07-21 225741 Screenshot 2025-07-21 215424 Screenshot 2025-07-21 225303 Screenshot 2024-10-06 131016

Getting Started πŸš€

Prerequisites

  • Node.js (v16+)
  • npm
  • Python 3.8+

Installation

  1. Clone the repository:
git clone <your-repo-url>
cd 3dexp_backup
  1. Install frontend dependencies:
npm install
  1. Set up backend:
# Install Python dependencies
pip install flask flask-cors requests

# Start backend server
python src/backend/app.py
  1. Start the React app:
npm start

The application will be available at http://localhost:3000

Project Structure πŸ“‚

3dexp_backup/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ Exo3d/           # Three.js visualization components
β”‚   β”œβ”€β”€ backend/         # Flask API implementation
β”‚   β”œβ”€β”€ components/      # React UI components
β”‚   β”œβ”€β”€ App.js           # Main application entry point
β”‚   └── ...
β”œβ”€β”€ public/              # Static assets (textures, images)
β”œβ”€β”€ package.json         # Frontend dependencies
β”œβ”€β”€ requirements.txt     # Backend dependencies
└── README.md

API Endpoints πŸ”Œ

Endpoint Description
GET /api/exoplanets List of exoplanet host stars with basic info
GET /api/planetary-system/<star_name> Detailed planetary system data for a specific star

Technologies Used πŸ’»

  • Frontend: React, Three.js, Material UI, Axios
  • Backend: Python, Flask, Flask-CORS
  • Data Source: NASA Exoplanet Archive

Customization πŸ› οΈ

  1. Add new planet textures to public/images/
  2. Modify queries in src/backend/app.py to fetch additional data fields
  3. Adjust visualization parameters in src/Exo3d/ components

License πŸ“„

This project is licensed under the MIT License - see the LICENSE file for details.

Team πŸ‘₯

Developed for NASA Space Apps Challenge 2024 by:

  • B. Ratna Babu
  • SK. Khaja
  • C. Sai Tejaswini
  • T. Eswar Sai Nandan
  • L. Kalyani
  • U. Mounika

Acknowledgments πŸ™

  • NASA Exoplanet Archive for open data access
  • Three.js community for 3D rendering tools
  • Material UI team for UI components

About

🌌 A 3D visualizer of exoplanetary systems built with React and Three.js. Explore stars and their planets interactively using real astronomical data.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages