- Space Hub is a full stack web application that aims to aggregate NASA data into a single, unified dashboard.
- It provides users with access to various resources and APIs: Astronomy Picture of the Day (APOD), Mars InSight weather data, Near-Earth Objects, and upcoming NASA events.
- The project consists of a React (Vite) frontend, a Flask backend, and a Dockerized deployment environment.
- Our motivation for this project was to simplify and ease the access of infromation from NASA and other Space related APIs.
- As such, users can find relevant, up-to-date space data and information all in one application.
- APOD viewer with image and description
- Mars InSight data
- Near Earth Object information
- Countdown timers for launches and events
- A responsive dashboard UI built with React and Tailwind
- REST API backend with caching
- Displays all of the data collectively to the user
- Handles all UI interactions
- React, Vite, Tailwind CSS
- Makes HTTP requests to the backend Flask API
- Worked on by the Frontend Team
- Directly fetches data from NASA APIs
- Processes the responses
- Python, Flask
- Passes data from external APIs to the frontend
- Worked on by the Backend Team
- Provide the real-time and up-to-date space and astronomy data
- APIs Used: NASA's APOD, Mars InSight, Near-Earth Objects, launch/event data, lunar data
- Queried and parsed by the backend
- Worked on by the Backend Team
- Allows for the project/app to be reproducible across systems
- Docker/Docker Compose runs frontend and backend together in isolated containers
- Worked on by the Deployment Team
Before running the project, ensure you have:
- Docker Desktop (for Windows/macOS) or Docker Engine (for Linux)
- Git
This application uses a demo NASA API key. Because the demo key is rate limited, users may encounter request limits during extended use. If you wish to avoid this, users are encouraged to register for a free NASA API key at: https://api.nasa.gov/
Clone the repository:
git clone https://github.com/CS222-UIUC/fa25-fa25-team083.git
cd fa25-fa25-team083Now, from the repository root:
docker compose up --buildAnd, paste into the local host into your browser of choice:
http://localhost:5173/
To shut it down:
CTRL + Cand
docker compose downFrontend Development
- Kayetan Jarzabek
- Abhinav Jain Backend Development
- Kayetan Jarzabek
- Ashrita Jakkam
- Abhinav Jain
Deployment
- Kayetan Jarzabek
CI/CD and PyTest -Abhinav Jain