π NASA Space Apps Global Hackathon Project
π Explore the cosmos with AI β detect exoplanets straight from your browser!
Exoscope leverages machine learning to identify candidate exoplanets based on light curve data. The platform includes:
- Dataset Upload & Analysis: Upload CSV files and visualize stellar brightness variations
- AI Detection Model: Trained ML model identifies exoplanet candidates automatically
- Research Assistant: RAG-powered chatbot helps researchers understand and explore data
- React 18 + Vite - Fast, modern development
- TypeScript - Type-safe code
- Tailwind CSS - Space-themed UI design
- shadcn/ui - Beautiful component library
- Recharts - Light curve visualization
- React Router - Navigation
π« The FastAPI backend is available here:
π Exoscope Backend Repository
The project has been deployed to the following endpoints (for convenience both the Hugging Face Space used for model hosting and the Vercel deployment for the full app are listed):
- Hugging Face Space (model/backend demo): https://giz17-space.hf.space
- Vercel (full frontend + backend proxy): https://nasaexoscope.vercel.app/
src/
βββ components/
β βββ layout/
β β βββ Navbar.tsx # Navigation bar
β β βββ Footer.tsx # Footer with credits
β βββ home/
β β βββ Hero.tsx # Hero section with 3D planet
β β βββ Features.tsx # Feature highlights
β βββ upload/
β β βββ UploadSection.tsx # CSV upload with drag-drop
β β βββ AnalysisResult.tsx # Results display
β β βββ LightCurveChart.tsx # Light curve visualization
β βββ chat/
β βββ ChatInterface.tsx # Chat UI
β βββ MessageBubble.tsx # Message display
β βββ ChatInput.tsx # Message input
βββ pages/
β βββ Home.tsx # Landing page
β βββ UploadPage.tsx # Upload & analysis page
β βββ ChatPage.tsx # AI chatbot page
β βββ NotFound.tsx # 404 page
βββ services/
β βββ api.ts # Backend API integration
βββ hooks/
β βββ useUpload.ts # Upload logic hook
β βββ useChat.ts # Chat logic hook
βββ App.tsx # Main app with routing
- Node.js 18+ and npm
# Clone the repository
git clone https://github.com/JosephJonathanFernandes/Nasa-Space-Hackathon-WizCoders-frontend
cd Nasa-Space-Hackathon-WizCoders-frontend
# Install dependencies
npm install
# Start development server
npm run devVisit http://localhost:8080 to see the application.
The platform is designed to work with ML models trained on:
- NASA Kepler mission data
- TESS mission observations
- Transit detection algorithms
- RAG (Retrieval-Augmented Generation) for chat
- Components: Functional components with TypeScript
- Styling: Design system tokens (no hardcoded colors)
- State: React hooks for local state, React Query for server state
- Documentation: JSDoc comments on all components/functions
- Accessibility: ARIA labels, keyboard navigation
β
Dataset upload with drag-and-drop
β
Light curve visualization
β
Candidate detection display
β
AI chatbot interface
β
Responsive design
β
Space-themed animations
- Advanced filtering and sorting
- Export analysis reports
- User authentication
- Dataset history
- Quick start
- Development
- Repository separation
- Contributing
- Code of Conduct
- Security
- License
- Credits
This repository contains the frontend application for Exoscope. The frontend and backend are maintained as separate repositories β see the "Repository separation" section below for links.
Prerequisites
- Node.js 18+ and npm (or pnpm/yarn)
Local development
-
Clone the frontend repository (or navigate into this folder if already cloned).
git clone https://github.com/JosephJonathanFernandes/Nasa-Space-Hackathon-WizCoders-frontend cd Nasa-Space-Hackathon-WizCoders-frontend
-
Install dependencies
npm ci
-
Start the development server
npm run dev
The Vite dev server will start and print the local URL (commonly http://localhost:5173). If you see a different port in your terminal, open that instead. Note: the instructions earlier in this file still reference http://localhost:8080 β keep whichever address your dev server reports.
Build and preview
npm run build npm run preview
- Use TypeScript and React functional components.
- Follow the existing project structure in
src/for pages, components, hooks and services. - Keep UI tokens in Tailwind and avoid hardcoded colors.
Important: The frontend and backend are separate repositories. This repository contains only the frontend application and documentation. The backend (FastAPI) repository used by this project is available at:
https://github.com/JosephJonathanFernandes/Nasa-Space-Hackathon-WizCoders-backend
If you are running the full stack locally, clone and run the backend repo separately and update the frontend src/services/api.ts (or environment variables) to point to your local backend URL.
Thanks for wanting to contribute! Please read the project's CONTRIBUTING.md for contribution guidelines, testing, and branching rules. A short summary:
- Fork and create feature branches from
main. - Open concise pull requests with a clear description and changelog when appropriate.
- Add or update tests for new behavior.
Please follow the project's CODE_OF_CONDUCT.md. We expect contributors to be respectful, inclusive, and collaborative.
If you discover a security vulnerability, please report it privately to the maintainers via the contact method listed in SECURITY.md rather than opening a public issue.
This frontend repository is distributed under the MIT License β see the LICENSE file for details.
This project was developed for the NASA Space Apps Global Hackathon. Thanks to the participants, mentors, and the open-source ecosystem.
Built with β€οΈ for exploring the cosmos πͺ


