A modern web application for tracking and visualizing Near-Earth Objects using NASA's NeoWs API.
- 🌍 Real-time NEO data from NASA's API
- 📊 Interactive charts and analytics
- 🎮 3D WebGL visualization with orbital mechanics
- 📱 Mobile-responsive design
- 🔍 Advanced filtering and search capabilities
- 📅 Date-based filtering with calendar picker
Visit NASA API Portal and sign up for a free API key.
```bash
npm run setup
npm install ```
Edit .env.local
and add your API key:
```
NEXT_PUBLIC_NASA_API_KEY=your_actual_api_key_here
```
```bash npm run dev ```
Open http://localhost:3000 in your browser.
Variable | Description | Required |
---|---|---|
NEXT_PUBLIC_NASA_API_KEY |
Your NASA API key | Yes |
``` ├── app/ # Next.js app directory │ ├── page.tsx # Main application page │ ├── layout.tsx # Root layout │ └── globals.css # Global styles ├── components/ # React components │ ├── neo-detail-view.tsx │ ├── neo-charts.tsx │ └── neo-3d-visualization.tsx ├── lib/ # Utility functions └── public/ # Static assets ```
- Next.js 14 - React framework with App Router
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Radix UI - Accessible component primitives
- Recharts - Composable charting library
- React Three Fiber - React renderer for Three.js
- Three.js - 3D graphics library
This application uses NASA's Near-Earth Object Web Service (NeoWs):
- Endpoint:
https://api.nasa.gov/neo/rest/v1/
- Documentation: NASA NeoWs API
- Rate Limits: 1,000 requests per hour with API key
- Size distribution analysis
- Hazard assessment charts
- Monthly approach patterns
- Velocity vs distance correlations
- WebGL-accelerated rendering
- Realistic orbital mechanics
- Interactive camera controls
- Real-time performance monitoring
- Search by name or ID
- Filter by hazard status
- Size and distance ranges
- Date-based filtering
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is open source and available under the MIT License.
- NASA for providing the NeoWs API
- The React and Next.js communities
- Three.js for 3D graphics capabilities
Built with ❤️ by Aayush Mishra