Sentinel is a MERN-stack web application that helps users determine whether they are being victimized by a pig butchering scam or romance scam. Instead of asking users to research red flags on their own, Sentinel walks them through a guided 10-question conversation powered by Google Gemini AI and delivers a personalized risk assessment at the end.
- AI-guided questionnaire : Gemini asks one targeted question at a time, adapting to the user's answers
- 10-question session limit : keeps the experience focused and manageable
- Animated risk meter : a gradient bar (green → red) reveals the assessed risk level: Low, Moderate, High, or Very High
- Specific red flag breakdown : the AI lists exactly which warning signs it detected and explains what they mean
- Next steps & resources : links to FTC and FBI IC3 reporting portals
- Fully stateless : no database, no user accounts, nothing stored; every session is private
- About & FAQs modals : accessible from the navbar
| Layer | Technology |
|---|---|
| Frontend | React 19, Bootstrap 5, React-Bootstrap |
| Backend | Node.js, Express 5 |
| AI | Google Gemini (gemini-flash-latest) via @google/generative-ai |
| Styling | Custom CSS (no UI framework lock-in) |
IT332/
├── backend/
│ ├── server.js
│ ├── .env
│ └── package.json
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ │ ├── Navbar.js
│ │ │ ├── ChatBot.js
│ │ │ └── RiskMeter.js
│ │ ├── App.js
│ │ └── App.css
│ └── package.json
└── README.md
- Node.js v18 or higher
- A free Google Gemini API key
git clone <your-repo-url>
cd IT332# Backend
cd backend
npm install
# Frontend
cd ../frontend
npm installCreate/edit backend/.env:
GEMINI_API_KEY=your_gemini_api_key_here
GEMINI_MODEL=gemini-flash-latest
PORT=5000Get a free API key at https://aistudio.google.com/app/apikey
Open two terminals:
Terminal 1 — Backend:
cd backend
npm run devYou should see: Sentinel server running on port 5000
Terminal 2 — Frontend:
cd frontend
npm startThe app opens at http://localhost:3000
- The user is greeted by Sentinel and asked to describe their situation
- Gemini asks up to 10 guided questions covering key scam indicators:
- Where/how they met the person
- Speed of emotional attachment
- Whether they've met in person or on live video
- Cryptocurrency or investment mentions
- Requests for money or urgency pressure
- Requests for secrecy from friends/family
- After the 10th answer, Gemini generates a full risk assessment
- The frontend parses the
RISK_LEVEL:marker from the response and renders the animated risk meter - The session ends with a green completion bar and a link to start a new assessment
- Sentinel is an educational tool and does not constitute legal or financial advice.
- If you believe you have been scammed, report to the FTC and FBI IC3 immediately.
IT332 — NJIT