Skip to content

SuhasNaragani/Forest-Monitoring-System

Repository files navigation

🌍 EcoWatch – Futuristic Forest Health Monitoring System

A cutting-edge full-stack web application that monitors forest health and detects deforestation using real Google Earth Engine (GEE) integration, satellite data processing, and immersive 3D visualizations.

✨ Tech Stack

  • Frontend: React, TailwindCSS, Framer Motion, Three.js, Recharts, Leaflet
  • Backend: Node.js, Express, Google Earth Engine SDK
  • Database: MongoDB
  • APIs: Google Earth Engine, OpenWeatherMap, Global Forest Watch
  • Authentication: JWT with role-based access
  • 3D Graphics: Three.js with React Three Fiber

🏢 Project Structure

/
├── backend/
│   ├── middleware/      # Authentication & security
│   ├── models/          # MongoDB schemas
│   ├── routes/          # API endpoints
│   ├── services/        # Google Earth Engine integration
│   └── server.js        # Express server
├── frontend/
│   └── src/
│       ├── components/      # React components
│       │   ├── Earth3D.js       # 3D Earth visualization
│       │   ├── AdvancedMap.js   # GEE-powered map
│       │   ├── FuturisticDashboard.js
│       │   └── LayerControl.js  # Map layer toggles
│       └── data/            # API integrations
└── gee-setup.md         # Google Earth Engine setup

Setup Guide

Prerequisites

  • Node.js and npm (or yarn)
  • Git

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd EcoWatch
  2. Install backend dependencies:

    cd backend
    npm install
  3. Install frontend dependencies:

    cd ../frontend
    npm install

Running the Application

IMPORTANT: Follow these steps in order. Open TWO separate command prompt windows.

Step 1: Start Backend Server (Terminal 1)

  1. Open first command prompt
  2. Navigate to backend folder:
    cd "D:\FOREST MONITORING\backend"
  3. Start the backend:
    npm start
  4. Wait until you see: Server running on port 5000
  5. Keep this window open

Step 2: Start Frontend Server (Terminal 2)

  1. Open second command prompt
  2. Navigate to frontend folder:
    cd "D:\FOREST MONITORING\frontend"
  3. Start the frontend:
    npm start
  4. Wait until you see: Compiled successfully!
  5. Keep this window open

Step 3: Access the Website

Open your browser and go to:

http://localhost:3000

Note: Both servers must be running simultaneously. Do not close either command prompt window.

🚀 Key Features Implemented

Real Google Earth Engine Integration

  • Sentinel-2 satellite imagery processing
  • MODIS Land Surface Temperature data
  • Hansen Global Forest Change dataset
  • Real-time NDVI calculations

Futuristic 3D Interface

  • Interactive 3D Earth visualization
  • Glassmorphism design with neon accents
  • Smooth animations with Framer Motion
  • Animated counters and live data updates

Advanced Map Visualization

  • Multi-layer satellite data overlay
  • Interactive region analysis
  • Time-range controls
  • Real-time deforestation alerts

Authentication & Security

  • JWT-based authentication
  • Role-based access (Admin/Researcher/User)
  • Secure API endpoints

🔑 API Configuration

Required API Keys:

  1. Google Earth Engine - Satellite data processing
  2. OpenWeatherMap - Weather data integration
  3. JWT Secret - Authentication security

Create .env file in backend directory:

GEE_SERVICE_ACCOUNT_KEY=./gee-service-account.json
OPENWEATHERMAP_API_KEY=your_openweathermap_api_key
JWT_SECRET=your_jwt_secret_key
MONGODB_URI=mongodb://localhost:27017/ecowatch
PORT=5000

About

Full-stack Forest Monitoring System leveraging Google Earth Engine APIs to analyze satellite vegetation data (NDVI) and convert complex geospatial information into real-time, human-readable forest health insights.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors