An enterprise-grade, ethical OSINT platform for digital footprint analysis, cross-platform identity aggregation, and cyber risk assessment powered by Groq AI.
- π‘οΈ Cryptographic Google OAuth Verification: Full server-side Google ID Token verification using
google-auth-library(OAuth2Client.verifyIdToken). - π 7 Real-Time OSINT Integrations: GitHub, Reddit, LeetCode (GraphQL), Stack Overflow, Dev.to, Gravatar, and HackerNews (Firebase REST API).
- π§ React Router DOM Architecture: Clean route-based navigation (
/login,/signup,/,/scan/:username,/account-security) with client-side JWT expiration checking (ProtectedRoute). - π Deterministic Risk Scoring Algorithm: Zero
Math.random(). Additive transparent risk scoring based on PII exposure, platform weighting, and account correlation. - 𧬠Unified Identity Card & Linkage Confidence: Automated identity aggregation combining name variants, disclosed locations, confirmed external links, and earliest online footprints.
- β‘ Scan Diffing & Exposure Monitoring: Compares new scan results against historical baselines to surface newly created or deactivated profiles.
- π Ethical Breach & Exposure Audit: Self-scoped XposedOrNot email breach lookup + K-Anonymity Pwned Passwords SHA-1 range checks (
api.pwnedpasswords.com/range/{first5}). - π€ Groq AI Threat Intelligence: Fast LLM inference generating actionable privacy remediation checklists and threat summaries.
| Layer | Technology | Purpose |
|---|---|---|
| Frontend | React 18 + Vite + React Router 6 | Route-driven SPA with instant hot-reloading |
| UI Aesthetics | Vanilla CSS (Cyberpunk) | Neon glassmorphism, glitch text, Matrix rain canvas |
| Auth | JWT + google-auth-library |
Signed Google ID token verification & bcrypt hashing |
| Backend | Node.js + Express | Scalable REST API |
| Database | MongoDB Atlas | Cloud document storage & historical scan caching |
| AI Engine | Groq API (Mixtral 8x7b) | High-speed LLM inference for threat synthesis |
| Hosting | Vercel + Render | Global Edge CDN & microservice deployment |
git clone https://github.com/ankitrmishra01/OpenTrace.git
cd OpenTrace
# Install backend & frontend packages
cd server && npm install
cd ../frontend && npm installBackend Environment (server/.env):
PORT=5000
MONGODB_URI=mongodb+srv://<user>:<password>@cluster.mongodb.net/opentrace?retryWrites=true&w=majority
JWT_SECRET=your_super_secret_jwt_key_here
CLIENT_URL=https://open-trace-six.vercel.app
GROQ_API_KEY=gsk_your_groq_api_key
GOOGLE_CLIENT_ID=1066171516184-vfjr7593li9t1kmppcpldv3kofano9v0.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your_google_client_secretFrontend Environment (frontend/.env):
VITE_API_URL=https://opentrace-server.onrender.com/api
VITE_GOOGLE_CLIENT_ID=1066171516184-vfjr7593li9t1kmppcpldv3kofano9v0.apps.googleusercontent.com# Start backend (from server/ directory)
npm run dev
# Start frontend (from frontend/ directory)
npm run dev- Frontend:
http://localhost:5173 - Backend API:
http://localhost:5000/api - Health Check:
http://localhost:5000/health
graph TD
User[User Browser] --> Router[React Router DOM]
Router -->|/login| LoginPage
Router -->|/signup| SignupPage
Router -->|/| ProtectedRoute
Router -->|/scan/:username| ScanResultsPage
Router -->|/account-security| AccountSecurityPage
ProtectedRoute --> DashboardPage
ScanResultsPage --> APIClient[Axios API Client]
APIClient --> Render[Render Express Backend]
Render --> Mongo[(MongoDB Atlas)]
Render --> Groq[Groq AI API]
Render --> OSINT[7 Live OSINT APIs]
POST /api/auth/registerβ Standard email/password registration.POST /api/auth/loginβ Email/password login issuing 7-day JWT.POST /api/auth/googleβ Server-side verification of Google ID token{ credential }.GET /api/auth/userβ Fetch authenticated user profile (Protected).
POST /api/scan/startβ Initiate 7-platform scan + permutation lookup (Protected).GET /api/scan/historyβ Retrieve user scan history & risk metrics (Protected).GET /api/scan/:scanIdβ Fetch specific scan result (Protected).POST /api/scan/analyzeβ Request Groq AI threat analysis (Protected).GET /api/scan/account-security/emailβ Self-scoped XposedOrNot breach lookup (Protected).POST /api/scan/account-security/passwordβ K-Anonymity SHA-1 password check (Protected).
- Cryptographic Google OAuth: Google Sign-In credentials are verified server-side with Google's public keys via
google-auth-library, preventing raw client parameter spoofing. - Defensive API URL Resolution:
frontend/src/services/api.jsautomatically normalizes paths to ensure/apiroutes match target backends without trailing slash 404 errors. - K-Anonymity Password Audit: Only the first 5 characters of a SHA-1 password hash are transmitted to
api.pwnedpasswords.com/range/{first5}. The raw password never leaves the client browser. - Self-Scoped Breach Search: Data breach checks are strictly restricted to the authenticated user's registered email (
req.user.email).
OpenTrace is built strictly for educational, security research, and personal privacy auditing purposes. It queries public REST/GraphQL APIs and does not perform unauthenticated ToS-violating scraping or unauthorized data harvesting. Always respect platform terms and privacy regulations.
MIT Β© 2026 OpenTrace β Built with β€οΈ for Cybersecurity Awareness.