Skip to content
sandy1472006Public

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

Kopargaon Civic Priority & Resource Allocation Platform

कोपरगाव नगर परिषद (Kopargaon Municipal Council)

A responsive, data-driven web application for the Kopargaon Municipal Council to manage civic complaints, score them with a multi-factor priority formula, allocate constrained department resources, suggest technician assignments with logged overrides, and provide plain-language explanations to citizens and ward officers.


🚀 Key Features

1. Multi-Factor Priority Scoring Engine

Every complaint is scored dynamically using a balanced triage formula: $$\text{FinalScore} = (\text{CategorySeverity} \times 0.65) + (\text{SectorScore} \times 0.35) + \text{AgingBonus}$$

  • Category Severity (1–10):
    • Water Pipeline (8–10): High utility & public health risk
    • Drainage (7–9): Flooding and disease hazard
    • Potholes (5–7): Accident risk (scaled up on NH-60)
    • Streetlights (4–6): Night public safety
  • Sector Priority Score (30% Pop + 30% Infra + 25% Vuln + 15% Conn): Precomputed per Kopargaon ward with dynamic Monsoon Mode (+1.5 flood vulnerability on Godavari riverbanks).
  • Aging Bonus: $+0.1$ per day open, capped at $+2.0$.

2. Greedy Resource Allocation

  • Triage queue is sorted descending by FinalScore.
  • Municipal department capacity limits:
    • Road/Civil: 16 crew-hours per cycle
    • Water Supply/Plumbing: 12 crew-hours per cycle
    • Drainage & Sewerage: 12 crew-hours per cycle
    • Electrical & Streetlights: 10 crew-hours per cycle
  • Jobs fitting within capacity are marked Allocated.
  • Jobs exceeding capacity are marked Deferred with transparent, auto-generated justification strings.

3. Accountable Worker Dispatch & Audit Log (USP)

  • Automatically recommends the best-fit free technician based on trade, workload, and home ward proximity.
  • Ward officers can accept recommendations in 1-click or execute a Manual Override.
  • Manual overrides require a mandatory justification log, recorded into an immutable Assignment & Override Audit Trail.

4. Interactive Kopargaon Sector Map

  • Hybrid Satellite GIS map centered at 19.885°N, 74.477°E (Kopargaon).
  • Color-coded polygons for all 6 Kopargaon wards:
    • 🔴 Critical ($\ge 8.0$): Godavari Ghat Ward, Station & Central Bazar Ward
    • 🟠 High ($6.0 - 7.9$): NH-60 Highway Ward, Sanjivani Road Ward, MIDC Industrial Ward
    • 🟡 Medium ($4.0 - 5.9$): Shirdi Road Ward
  • Geotagged category pins with hover preview cards and click-to-inspect popups.

5. Citizen Status Lookup

  • Search by complaint token (e.g. KPG-2025-081, KPG-2025-042, KPG-2025-103).
  • Step-by-step progress timeline: Geotagged $\rightarrow$ AI Scored $\rightarrow$ Resource Allocated $\rightarrow$ Dispatched $\rightarrow$ Resolved.
  • Plain-language explanation cards detailing why their complaint is ranked and scheduled.

6. Edge Ingest & Image QA Simulator

  • Live photo upload / preset selector.
  • Client-side Canvas edge & luminosity inspection: detects blur, darkness, and corrupted/blank captures with immediate feedback.
  • Point-in-polygon ray casting automatically identifies the correct Kopargaon ward.

📂 Project Structure

kopargaon-civic-platform/
├── index.html                   # HTML5 shell with Tailwind CSS & Leaflet GIS CDN
├── README.md                    # Project documentation & spec guide
├── assets/                      # Curated complaint photos (including Kopargaon assets)
│   ├── pothole_road.jpg
│   ├── streetlight_issue.jpg
│   └── water_leakage_drainage.jpg
└── src/
    ├── data/
    │   ├── sectors.js           # Kopargaon wards, polygons & base scores
    │   ├── workers.js           # Municipal technician roster & status
    │   ├── resourcePools.js     # Departmental crew hour limits
    │   └── initialComplaints.js # Curated complaints dataset
    ├── algorithms/
    │   ├── priorityScoring.js   # Priority formula & explanation generator
    │   ├── resourceAllocation.js# Greedy allocation & deferral rationale
    │   ├── workerSuggestion.js  # Worker suggestion engine
    │   └── geoUtils.js          # Point-in-polygon containment & distance
    ├── utils/
    │   └── imageValidator.js    # Canvas blur/darkness QA validator
    ├── components/
    │   ├── Navbar.js            # Header, Monsoon toggle & view switcher
    │   ├── LandingPage.js       # Hero intro & key pillars
    │   ├── WardDashboard.js     # Priority table, hover zoom & resource gauges
    │   ├── SectorMap.js         # Leaflet Satellite hybrid GIS map
    │   ├── WorkerPanel.js       # Auto-dispatch & override audit trail
    │   ├── CitizenLookup.js     # Citizen complaint status tracker
    │   ├── DataTaggingTool.js   # Edge QA & photo ingestion simulator
    │   └── HoverPreview.js      # Hover thumbnail popover
    └── app.js                   # Application state manager & router

🏃 How to Run

  1. Open index.html directly in any modern web browser (Google Chrome, Microsoft Edge, Mozilla Firefox, Opera).
  2. Alternatively, serve with any static web server:
    # Optional: if Python is available
    python -m http.server 8000
  3. Open http://localhost:8000 in your browser.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages