Skip to content
ishanpeshkarPublic

About

Full-stack AI-powered crowdsourced safety heatmap platform with React, Node.js, Python, and microservices.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

Repository files navigation

🔐 Sentinel – AI-Powered Crowdsourced Safety Heatmap Platform

Sentinel is a full-stack, microservice-based web application that provides real-time, crowd-sourced safety insights. By combining AI-driven sentiment analysis, Generative AI summaries, and dynamic geospatial visualization, Sentinel empowers users to make safer, smarter decisions about their environment.

🌟 A portfolio-ready capstone project integrating frontend, backend, AI/ML, and cloud-ready architecture with real-world impact.


🎥 Live Demo

Sentinel Demo

Once you record a short GIF of the live app (login → search/pin → submit review → heatmap update → AI summary → moderation) replace this placeholder with the actual GIF.


💡 Motivation & Impact

Sentinel was built to bridge the gap between technology and community safety, showcasing an end-to-end integration of frontend, backend, and AI/ML.

  • AI/ML-Powered Insights:

    • Sentiment Analysis: Converts user reviews into a quantitative sentiment score (+1 = positive, -1 = negative).
    • Generative AI Summaries: Aggregates reviews to create concise, human-readable summaries of safety at any location.
  • Community & Public Utility:

    • Provides real-time safety maps for citizens.
    • Includes moderation mechanisms to ensure safe, accurate community contributions.
    • Potential for government partnerships for urban safety and law enforcement surveillance.
  • Portfolio Significance:

    • Demonstrates full-stack development (React + Node.js + Firebase) and AI integration.
    • Highlights real-world problem-solving and social impact potential.

Sentinel turns crowdsourced data into actionable safety intelligence.


🚀 Features

🌍 Map & Heatmap

  • Users can search or pin locations on the map.
  • Submit safety reviews with:
    • Star rating (out of 5)
    • Pre-filled prompts + additional comments
  • Heatmap color-coded by sentiment score:
    • Green = positive
    • Red = negative

🤖 AI-Powered Microservices

  • Sentiment-Inference Service: ML model scores reviews from +1 to -1.
  • Summarization Service: Gen AI summarizes all reviews for the selected area.
  • Moderation Service: Detects toxic or inappropriate content; flags reviews as pending_moderation until approved.

📝 Community & User Features

  • Secure user login with Firebase Authentication.
  • Personalized user profiles with review history and moderation status.
  • Upvote/Downvote system to highlight helpful reviews.

## 🔗 System Architecture

System Architecture

Diagram Explanation:

  1. User Flow: Login → Search/Pin location → Submit review
  2. Backend Flow: Review goes through API → Database → AI microservices
  3. Moderation: Toxic reviews are flagged and hidden until approved
  4. AI Services:
    • Sentiment Analysis → Heatmap update (Red/Green)
    • Generative Summarization → Display AI-generated summary
  5. End Result: Users see a color-coded heatmap + AI summary for safety decision-making

⚙️ Technologies

  • Frontend: React, Vite, React Leaflet, react-router-dom
  • Backend: Node.js, Express.js
  • Database: Firebase Firestore (NoSQL)
  • AI Microservices: Python, FastAPI
  • Machine Learning: Hugging Face Transformers, PyTorch, Scikit-learn
  • Authentication: Firebase Authentication
  • Deployment (Planned): Docker, Docker Compose, GitHub Actions, Google Cloud Run

🏃 Getting Started

✅ Prerequisites

  • Node.js (v20.11+ or v22.2+)
  • Python (v3.8+)
  • Firebase project with Firestore + Authentication enabled

⚡ Local Development Setup

  1. Clone the repository
git clone https://github.com/YourUsername/sentinel-platform.git
cd sentinel-platform
  1. Setup Backend
cd backend
npm install
# Add Firebase serviceAccountKey.json to /src/config
npm start

Backend runs at: http://localhost:5000

  1. Setup AI Microservices
cd services/<service_name>
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn main:app --reload --port <port_number>
  • Sentiment Service → :8000
  • Summarization Service → :8001
  • Moderation Service → :8002
  1. Setup Frontend
cd frontend
npm install
# Add Firebase client config to src/firebase.js
npm run dev

Frontend runs at: http://localhost:5173


🔮 Roadmap & Future Enhancements

  • Proactive Safety Notifications: Real-time alerts for low-safety areas.
  • Full Containerization: Dockerize all services for consistent deployments.
  • CI/CD Pipeline: GitHub Actions + Google Cloud Run deployment.
  • Community Integration: Partner with local authorities and civic organizations.

📂 Project Structure

sentinel-platform/
│── backend/                # Node.js Express backend
│── frontend/               # React + Vite frontend
│── services/               # AI microservices
│    ├── sentiment-inference/
│    ├── summarization/
│    └── moderation/
│── docs/                   # System diagrams & documentation
│── LICENSE
│── README.md

📜 License

MIT License – see LICENSE


🌟 Why Sentinel Stands Out

  • ✅ Full-stack + AI/ML integration: End-to-end implementation.
  • ✅ Real-world impact: Crowd-sourced safety insights, moderated for reliability.
  • ✅ Portfolio-ready: Demonstrates modern technologies, microservices, and cloud-readiness.
  • ✅ Social value: Can be extended to government/public safety collaboration.

Sentinel is a working, production-like platform turning data into actionable safety intelligence.

About

Full-stack AI-powered crowdsourced safety heatmap platform with React, Node.js, Python, and microservices.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages