Skip to content

Ravitheja1289-dot/RADAR-CME

Repository files navigation

RADAR-CME

Real-time Aditya-L1 Detection and Analysis of Radial CMEs

A modern web dashboard for real-time and historical Coronal Mass Ejection (CME) and space weather visualization using NOAA data.

🚀 Features

  • ✅ Real-time CME detection dashboard
  • ✅ ML-powered predictions and analytics
  • ✅ Interactive time-series charts (Recharts)
  • ✅ Historical CME event archive with search/export
  • ✅ Coronagraph image viewer
  • ✅ Firebase Authentication (Email/Password + Google)
  • ✅ Dark/Light theme switching
  • ✅ Fully responsive mobile design

🛠️ Tech Stack

  • Framework: Next.js 15 (App Router)
  • Language: TypeScript 5.5
  • Styling: Tailwind CSS 3.4
  • Authentication: Firebase 11.9
  • Charts: Recharts 2.10
  • UI Icons: Lucide React

📦 Installation

# Install dependencies
npm install

# Set up environment variables
cp .env.local.example .env.local
# Edit .env.local with your Firebase credentials

# Run development server
npm run dev

Open http://localhost:3000

🔧 Scripts

npm run dev      # Start development server
npm run build    # Build for production
npm start        # Start production server
npm run lint     # Run ESLint

📁 Project Structure

RADAR-CME/
├── app/                    # Next.js App Router
│   ├── layout.tsx         # Root layout
│   ├── page.tsx           # Home page
│   ├── (protected)/       # Protected routes
│   │   ├── dashboard/     # Main dashboard
│   │   ├── archive/       # Event archive
│   │   ├── about/         # About page
│   │   └── docs/          # Documentation
│   ├── welcome/           # Landing page
│   └── login/             # Authentication
├── src/
│   ├── components/        # React components
│   ├── context/           # Auth & Theme contexts
│   ├── api/               # Data services
│   ├── services/          # ML services
│   └── types/             # TypeScript types
├── public/                # Static assets
└── next.config.js         # Next.js config

🔑 Environment Variables

Create .env.local with your Firebase credentials:

NEXT_PUBLIC_FIREBASE_API_KEY=your-key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your-bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your-sender-id
NEXT_PUBLIC_FIREBASE_APP_ID=your-app-id
NEXT_PUBLIC_ML_API_BASE_URL=http://localhost:8000

🔒 Authentication

The app uses Firebase Authentication with:

  • Email/Password sign-in
  • Google OAuth
  • Password reset functionality
  • Protected route handling

📱 Pages

  • / - Home (auto-redirects based on auth)
  • /welcome - Landing page
  • /login - Authentication
  • /dashboard - Main dashboard (protected)
  • /archive - CME event archive (protected)
  • /about - System information (protected)
  • /docs - Documentation (protected)

🎨 Theming

Dark/Light mode with:

  • System preference detection
  • LocalStorage persistence
  • Smooth transitions
  • Tailwind dark mode classes

🐛 Troubleshooting

Issue: Authentication not working

  • Check Firebase credentials in .env.local
  • Ensure Email/Password and Google auth are enabled in Firebase Console

Issue: Build errors

  • Clear .next folder and rebuild
  • Run npm install to ensure all dependencies are installed

📄 License

MIT License - feel free to use this project for learning or commercial purposes.

🙏 Acknowledgments

  • NASA SOHO Mission
  • NOAA Space Weather Prediction Center
  • Aditya-L1 Mission Team

About

A modern web dashboard for real-time and historical Coronal Mass Ejection (CME) and space weather visualization using NOAA data.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors