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.
B. Ratna Babu, SK. Khaja, C. Sai Tejaswini, T. Eswar Sai Nandan, L. Kalyani, and U. Mounika.
- 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
- Node.js (v16+)
- npm
- Python 3.8+
- Clone the repository:
git clone <your-repo-url>
cd 3dexp_backup- Install frontend dependencies:
npm install- Set up backend:
# Install Python dependencies
pip install flask flask-cors requests
# Start backend server
python src/backend/app.py- Start the React app:
npm startThe application will be available at http://localhost:3000
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
| 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 |
- Frontend: React, Three.js, Material UI, Axios
- Backend: Python, Flask, Flask-CORS
- Data Source: NASA Exoplanet Archive
- Add new planet textures to
public/images/ - Modify queries in
src/backend/app.pyto fetch additional data fields - Adjust visualization parameters in
src/Exo3d/components
This project is licensed under the MIT License - see the LICENSE file for details.
Developed for NASA Space Apps Challenge 2024 by:
- B. Ratna Babu
- SK. Khaja
- C. Sai Tejaswini
- T. Eswar Sai Nandan
- L. Kalyani
- U. Mounika
- NASA Exoplanet Archive for open data access
- Three.js community for 3D rendering tools
- Material UI team for UI components