Skip to content

raziabegum705/nexus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⬑ NEXUS

Intelligent Disaster Logistics Platform

Predict. Route. Deliver. Before It's Too Late.

Live Demo Demo Video Project Deck

Built for Google Solution Challenge 2026 | SDG 9 Β· SDG 11 Β· SDG 13


🌍 Problem Statement

Every year, natural disasters affect 200+ million people globally. The biggest killer isn't always the disaster itself β€” it's the failure to deliver aid in time. Supply chains break down, routes get blocked, and critical medical/food supplies sit stranded while people die.

NEXUS solves this with AI-powered logistics intelligence that predicts disruptions before they happen and automatically reroutes supplies in real-time.


🌟 What is NEXUS?

NEXUS is an AI-powered supply chain intelligence platform that helps governments, NGOs, hospitals, and suppliers deliver essential resources β€” food, medicine, water, and emergency kits β€” quickly during disasters such as floods, earthquakes, or pandemics.


πŸš€ Live Demo

Resource Link
πŸ”΄ Live App https://nexus-yjtf.vercel.app/
πŸ“Ή Demo Video https://youtu.be/5qn0VUIPjSo
πŸ“Š Project Deck https://docs.google.com/presentation/d/1w5S0GjdkRTLwUePFrCz1plw_AQRD0Sd8/edit?slide=id.p1#slide=id.p1
πŸ’» GitHub https://github.com/raziabegum705/nexus

✨ Key Features

Feature Description
πŸ—ΊοΈ Live Route Map Real-time shipment tracking across India using Leaflet maps with risk heatmaps
πŸ€– AI Rerouting Gemini AI suggests 3 alternate routes instantly when a shipment is at risk
⚑ 48hr Disruption Forecast Predicts supply chain failures before they happen
🌊 Cascade Failure Simulator Unique feature β€” simulate how one delay ripples through the entire supply chain
πŸ“‘ Live Disruption Feed Real-time alerts for weather, traffic, and operational disruptions via Socket.IO
πŸ“Š Mission Control Dashboard Live KPIs: total shipments, delays, risk scores, active disruptions
πŸ”₯ Firebase Realtime DB All data persists and syncs live across all connected users

πŸ› οΈ Tech Stack

Layer Technology
Frontend React 18, Vite, React Router
Maps Leaflet.js + React-Leaflet
Backend Node.js, Express, Socket.IO
Database Firebase Realtime Database (Google)
AI Gemini 1.5 Flash (Google)
Styling Custom CSS
Deployment Vercel (frontend) + Render (backend)
SDGs 9 (Industry & Infrastructure), 11 (Sustainable Cities), 13 (Climate Action)

πŸ“± Pages

Page URL Description
Landing / Hero page with live stats
Dashboard /dashboard Mission Control β€” live map + KPIs
Shipments /shipments AI reroute panel + shipment tracking
Disruptions /disruptions Live disruption intelligence feed
Cascade Sim /simulate πŸ”₯ Cascade failure simulator

πŸ“Έ Screenshots

Dashboard β€” Mission Control

Dashboard

Live Shipment Tracking

Shipments

AI Rerouting (Gemini)

Reroute

Cascade Failure Simulator

Simulate

Disruption Intelligence Feed

Disruptions


πŸƒ Run Locally

Prerequisites

Setup

# Clone the repo
git clone https://github.com/raziabegum705/nexus.git
cd nexus

Server

cd server
npm install

# Copy env file and fill in your keys
cp .env.example .env

# Seed Firebase with initial data (run once)
npm run seed

# Start server
npm run dev

Client

cd client
npm install

# Copy env file and fill in your Firebase values

# Mac / Linux
cp .env.example .env

# Windows
copy .env.example .env

# Start client
npm run dev

Open http://localhost:5173

πŸ”‘ Optional β€” Gemini API

Create server/.env and add:

GEMINI_API_KEY=your_key_here

Without it, AI rerouting still works with smart mock data βœ…


πŸ”₯ Firebase Setup (5 minutes)

  1. Go to console.firebase.google.com
  2. Create a project named nexus
  3. Realtime Database β†’ Create database β†’ Start in test mode (development only)
  4. Project Settings β†’ Service Accounts β†’ Generate new private key β†’ save as server/serviceAccountKey.json

⚠️ Never commit this file to GitHub.

  1. Project Settings β†’ Your Apps β†’ Add Web App β†’ copy the config into client/.env
  2. Run cd server && npm run seed to populate the database

πŸš€ Deploy

Frontend β†’ Vercel

  1. Push to GitHub
  2. vercel.com β†’ New Project β†’ Import repo
  3. Root Directory: client | Framework: Vite
  4. Add all VITE_* env vars from client/.env
  5. Deploy β†’ copy your live URL

Backend β†’ Render

  1. render.com β†’ New β†’ Web Service
  2. Connect your GitHub repo
  3. Root Directory: server | Runtime: Node | Build Command: npm install | Start Command: npm start
  4. Add environment variables: GEMINI_API_KEY, FIREBASE_DB_URL, FIREBASE_SERVICE_ACCOUNT (paste the JSON as a single-line string)
  5. Deploy β†’ copy your Render service URL β†’ update VITE_BACKEND_URL in Vercel

πŸ—οΈ System Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                          USER / BROWSER                             β”‚
β”‚              React 18 + Vite  |  Leaflet Maps  |  Custom CSS        β”‚
β”‚                                                                     β”‚
β”‚   /           /dashboard    /shipments   /disruptions   /simulate   β”‚
β”‚  Landing     Mission Ctrl   AI Reroute    Live Feed    Cascade Sim  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚  HTTP REST + WebSocket (Socket.IO)
                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                       BACKEND  (Render)                             β”‚
β”‚                    Node.js + Express Server                         β”‚
β”‚                                                                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  REST API    β”‚  β”‚  Socket.IO Hub  β”‚  β”‚   Seed / Data Layer    β”‚  β”‚
β”‚  β”‚  /api/route  β”‚  β”‚  Live shipment  β”‚  β”‚   npm run seed β†’       β”‚  β”‚
β”‚  β”‚  /api/ships  β”‚  β”‚  updates every  β”‚  β”‚   populates Firebase   β”‚  β”‚
β”‚  β”‚  /api/disruptβ”‚  β”‚  4 seconds      β”‚  β”‚   with initial data    β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚         β”‚                   β”‚                                       β”‚
β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                       β”‚
β”‚                    β”‚                                                β”‚
β”‚         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                     β”‚
β”‚         β”‚   Gemini 1.5 Flash  β”‚  ← AI Rerouting Engine              β”‚
β”‚         β”‚   Google AI API     β”‚    3 alternate routes on demand     β”‚
β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚  Firebase Admin SDK
                             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  FIREBASE REALTIME DATABASE  (Google)               β”‚
β”‚                                                                     β”‚
β”‚   shipments/      disruptions/      routes/      kpis/              β”‚
β”‚   (live status)   (active alerts)   (map data)   (dashboard stats)  β”‚
β”‚                                                                     β”‚
β”‚         Syncs live across all connected clients in real-time        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Data Flow β€” AI Rerouting

User flags at-risk shipment
        β”‚
        β–Ό
React client  ──POST /api/reroute──▢  Express server
                                             β”‚
                                             β–Ό
                                     Gemini 1.5 Flash
                                     (prompt: shipment
                                      context + risk data)
                                             β”‚
                                             β–Ό
                                    3 alternate routes
                                    with risk scores
                                             β”‚
                        β—€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                    Response rendered on
                    Leaflet map in real-time

Cascade Failure Simulation Flow

Select a node to fail  β†’  Mark upstream shipments at-risk
       β”‚
       β–Ό
Ripple effect calculated across dependency graph
       β”‚
       β–Ό
Affected shipments highlighted on map + dashboard KPIs update
       β”‚
       β–Ό
AI suggests recovery routes for all impacted nodes

Project Structure

nexus/
β”œβ”€β”€ client/                  # React 18 + Vite frontend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ pages/           # Landing, Dashboard, Shipments,
β”‚   β”‚   β”‚                    # Disruptions, Simulate
β”‚   β”‚   β”œβ”€β”€ components/      # Map, KPI cards, Disruption feed
β”‚   β”‚   └── App.jsx          # React Router setup
β”‚   └── .env.example         # Firebase config template
β”‚
β”œβ”€β”€ server/                  # Node.js + Express backend
β”‚   β”œβ”€β”€ index.js             # Express + Socket.IO entry point
β”‚   β”œβ”€β”€ routes/              # /api/reroute, /api/shipments, etc.
β”‚   β”œβ”€β”€ seed.js              # Firebase data seeder
β”‚   β”œβ”€β”€ serviceAccountKey.json  # Firebase Admin credentials (gitignored)
β”‚   └── .env.example         # GEMINI_API_KEY, FIREBASE_DB_URL
β”‚
β”œβ”€β”€ screenshots/             # App screenshots for README
β”œβ”€β”€ .gitignore
└── README.md

🎯 SDG Alignment

SDG Goal How NEXUS Contributes
SDG 9 Industry, Innovation & Infrastructure Resilient supply chain infrastructure through intelligent routing
SDG 11 Sustainable Cities & Communities Faster aid delivery builds disaster-resilient communities
SDG 13 Climate Action Weather-aware logistics adapts to climate-driven disruptions

πŸ‘₯ Team

Name Role
Nivedh Ireni Project Lead, Team Coordination & Strategy
Ananya Darna Backend Feature Development, Product Planning & Documentation
Razia Begum Full Stack Development / Core Implementation
Bobbala Gopinadh Yadav Testing, Research & Quality Assurance

Built with ❀️ by Team Midnight City 555 for Google Solution Challenge 2026

About

🚨 AI-powered disaster logistics platform | Cascade Failure Simulator | Real-time tracking | Gemini AI rerouting | Google Solution Challenge 2026

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors