Space every day โ but never boring.
Orion Today transforms NASAโs official Astronomy Picture of the Day (APOD) into an engaging and accessible experience.
With the help of Grok AI, each cosmic image is explained in a witty and human way, making astronomy inspiring for everyone.
This project was created for the Code with Kiro Hackathon.
-
Daily Content: Automatically fetches the latest photo and data from the NASA APOD API.
-
AI-Powered Explanations: Uses Grok AI to generate engaging, witty descriptions of cosmic phenomena.
-
Modern UI: A clean and responsive user interface built with React and TailwindCSS.
-
Kiro Integration: Core API interaction logic and tests were developed with the Kiro IDE.
-
Frontend: React, Vite, TailwindCSS
-
Backend: Node.js, Express
-
AI IDE: Kiro
-
APIs: Grok API (xAI), NASA APOD API
Here you can find the visual documentation of the system design:
-
Flowchart โ high-level flow of fetching APOD โ Grok explanation โ UI rendering.

-
Sequence Diagram โ request/response interactions between Frontend, Backend, Grok, and NASA APIs.

To run the project locally, follow these steps:
- ๐ Clone the repository:
git clone https://github.com/vero-code/orion-today.git
cd orion-today - ๐ Set up the Backend:
cd backend
npm install Create a .env file in the backend folder and add your API keys:
GROK_API_KEY=your_grok_api_key
NASA_API_KEY=your_nasa_api_key Start the backend server:
node server.js Server will run at http://localhost:3001.
- ๐ Set up the Frontend:
cd frontend
npm install
npm run dev App will run at http://localhost:5173.
This project includes unit and integration tests for the backend, generated and refined with the Kiro IDE.
๐ Run all tests:
cd backend
npm testThis will execute both unit tests (e.g., grok_connector.test.js) and integration tests (grok_connector.integration.test.js) using Jest.
๐ Run integration tests only:
npm run test:integration(see run-integration-tests.js for details)
This project is distributed under the MIT license.