Skip to content

shekhawatmuskan/nasa-react-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

11 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation


๐ŸŒ About The Project

๐ŸŽฏ What is APOD?

Astronomy Picture of the Day (APOD) is one of NASA's most popular websites, featuring a different space or astronomy-related image each day, along with a brief explanation written by a professional astronomer.

๐Ÿš€ Mission

To bring the wonders of the universe to your fingertips through a beautiful, modern, and intuitive React application that showcases NASA's incredible imagery.


๐Ÿ“ธ Project Overview

Everyday Image with Description

NASA APOD Explorer Screenshot

All Pictures

Navigation Menu

โœจ Features



๐ŸŽจ Stunning UI

Beautiful, modern interface with smooth animations and responsive design


๐ŸŒ  NASA Integration

Direct integration with NASA's official APOD API for authentic content


๐Ÿ“– Expert Explanations

Professional astronomical explanations from NASA astronomers


๐Ÿ“ฑ Fully Responsive

Seamless experience across desktop, tablet, and mobile devices


โšก Lightning Fast

Built with Vite for optimal performance and instant load times


๐Ÿ—“๏ธ Daily Updates

Fresh cosmic imagery and content updated automatically every day

Divider


๐Ÿ› ๏ธ Built With

React
React
Vite
Vite
JavaScript
JavaScript
CSS
CSS3
HTML
HTML5

const techStack = {
  frontend: ["React", "JavaScript ES6+", "CSS3"],
  buildTool: "Vite",
  api: "NASA APOD API",
  features: ["Responsive Design", "Dynamic Content", "Modern UI/UX"],
};

Divider


๐Ÿ“ Project Structure

nasa-apod-explorer/
โ”œโ”€โ”€ public/
โ”‚   โ”œโ”€โ”€ mars.png
โ”‚   โ””โ”€โ”€ vite.svg
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ assets/
โ”‚   โ”‚   โ”œโ”€โ”€ react.svg
โ”‚   โ”‚   โ”œโ”€โ”€ Screenshot.png
โ”‚   โ”‚   โ””โ”€โ”€ menu.png
โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”‚   โ”œโ”€โ”€ App.jsx
โ”‚   โ”‚   โ”œโ”€โ”€ Footer.jsx
โ”‚   โ”‚   โ”œโ”€โ”€ Main.jsx
โ”‚   โ”‚   โ”œโ”€โ”€ SideBar.jsx
โ”‚   โ”‚   โ”œโ”€โ”€ NavigationSidebar.jsx
โ”‚   โ”‚   โ””โ”€โ”€ Gallery.jsx
โ”‚   โ”œโ”€โ”€ index.css
โ”‚   โ””โ”€โ”€ main.jsx
โ”œโ”€โ”€ .env                     # Environment variables (NASA API key)
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ index.html
โ”œโ”€โ”€ package.json
โ””โ”€โ”€ README.md

Divider


๐Ÿš€ Getting Started

๐ŸŽฏ Prerequisites


Node.js
v14.0 or higher

npm
v6.0 or higher

NASA API Key
Free registration

๐Ÿ“ฅ Installation

Step 1๏ธโƒฃ : Clone the Repository
# HTTPS
git clone https://github.com/shekhawatmuskan/nasa-react-app.git

# SSH
git clone git@github.com:shekhawatmuskan/nasa-react-app.git

# GitHub CLI
gh repo clone shekhawatmuskan/nasa-react-app
Step 2๏ธโƒฃ : Navigate to Project Directory
cd nasa-react-app
Step 3๏ธโƒฃ : Install Dependencies
npm install

This will install:

  • โš›๏ธ React and React DOM
  • โšก Vite and build tools
  • ๐Ÿ”ง ESLint for code quality
  • ๐Ÿ“ฆ All project dependencies
Step 4๏ธโƒฃ : Get Your NASA API Key ๐Ÿ”‘
  1. Visit NASA API Portal ๐ŸŒ
  2. Fill out the simple registration form ๐Ÿ“
  3. Receive your API key instantly via email ๐Ÿ“ง
  4. Copy your unique API key ๐Ÿ“‹

๐Ÿ’ก Tip: NASA API keys are free and provide generous rate limits!

Step 5๏ธโƒฃ : Configure Environment Variables

Create a .env file in the root directory:

# NASA API Configuration
VITE_NASA_API_KEY=your_actual_api_key_here

# Optional: Add custom configurations
# VITE_API_BASE_URL=https://api.nasa.gov

โš ๏ธ Important: Never commit your .env file to version control!

Step 6๏ธโƒฃ : Launch the Application ๐ŸŽ‰
npm run dev

Your app will be running at:

๐ŸŒ Local:   http://localhost:5173/
๐Ÿ“ฑ Network: http://192.168.x.x:5173/

๐ŸŽŠ Congratulations! You're ready to explore the cosmos! ๐ŸŒŒ


Divider


๐Ÿงฉ Component Architecture

graph TD
    A[App.jsx] --> B[Main.jsx]
    A --> C[SideBar.jsx]
    A --> D[Footer.jsx]
    A --> E[NavigationSidebar.jsx]
    A --> F[Gallery.jsx]

    B --> G[Image Display]
    C --> H[Title & Date]
    C --> I[Description]
    D --> J[Navigation]
    E --> K[Menu Options]
    F --> L[All Pictures with Descriptions]

    style A fill:#667eea,stroke:#764ba2,stroke-width:3px,color:#fff
    style B fill:#f093fb,stroke:#f5576c,stroke-width:2px
    style C fill:#4facfe,stroke:#00f2fe,stroke-width:2px
    style D fill:#43e97b,stroke:#38f9d7,stroke-width:2px
    style E fill:#fa709a,stroke:#fee140,stroke-width:2px
    style F fill:#30cfd0,stroke:#330867,stroke-width:2px
Loading

๐Ÿ“ฆ Component Details

App.jsx

๐ŸŽฎ Main Controller

  • State Management
  • API Integration
  • Data Flow Control

Main.jsx

๐Ÿ–ผ๏ธ Image Display

  • Responsive Layout
  • Media Rendering
  • Visual Effects

SideBar.jsx

๐Ÿ“Š Information Panel

  • Title Display
  • Date Information
  • Description Text

Footer.jsx

๐Ÿฆถ Navigation

  • App Controls
  • Extra Info
  • Links

NavigationSidebar.jsx

๐Ÿ“‹ Navigation Menu

  • Access to all pictures stored by NASA
  • Browse images with their descriptions
  • Menu toggle functionality

Gallery.jsx

๐Ÿ–ผ๏ธ Gallery View

  • Displays all pictures from NASA
  • Shows images with their descriptions
  • Grid layout for easy browsing

Divider



If you found this project helpful, please give it a โญ!



About

Explore the cosmos with NASA APOD Explorer - a modern React web app showcasing NASA's Astronomy Picture of the Day. Features stunning space imagery, professional astronomical explanations, and a beautiful responsive UI built with React and Vite.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Contributors