CyberWhisper is an AI-powered scam and phishing detection platform that enables users to speak or paste suspicious messages and links, analyze them for threats in real-time, and log severe incidents using blockchain transparency. It leverages voice recognition, advanced text analysis, and integrates with VirusTotal for robust security checks—all in a modern, privacy-first, no-login web app.
- Features
- Tech Stack
- Folder Structure & File Overview
- Getting Started
- Environment Variables
- VirusTotal Integration
- Usage
- Contributing
- License
- 🎙️ Voice Assistant: Speak directly to analyze messages for scams/phishing.
- 🔗 Link & Text Analysis: Paste any message, email, or link for instant fraud detection.
- 🧠 Smart Risk Scoring: Get detailed confidence scores and human-friendly explanations.
- 🔒 Blockchain Logging: Mock Algorand logging for transparent, tamper-proof threat tracking.
- 🌐 VirusTotal Integration: URLs are checked live against VirusTotal's threat intelligence.
- Modern UI: Responsive, cyber-themed design using Tailwind CSS and Lucide icons.
- No Login Required: Privacy-first; users stay anonymous.
- Frontend: React, Tailwind CSS
- Backend: Express
- Routing: React Router
- SVG/Icons: Custom SVG, Lucide Icons
- APIs: VirusTotal Public API
- Blockchain: Mock Algorand logic (for demo/logging)
- Other: react-scroll (smooth section navigation)
- README.md – This documentation file.
- frontend/ – All source code:
- api/ - server.js
Click to expand a detailed file-by-file description
- Main app wrapper. Sets up app-wide routing using React Router. Loads the Navbar and Footer components for persistent layout. Defines all primary routes—home, try-now, feature pages, about, contact, etc.
- Landing page.
- Hero section with mission statement, animated logo.
- Features grid (voice input, link/text analysis, risk scoring, blockchain logging).
- "How it Works" step-by-step guide.
- Interactive "Try It Now" demo section where users can paste/speak a message or link. Uses VirusTotal API for URL analysis, and custom logic for text messages.
- Comparison table: CyberWhisper vs. others.
- All sections are scroll-linked for navigation.
- Dedicated "Try Now" portal with two big cards:
- Voice Assistant (routes to
/voice-assistant) - Link & Text Analysis (routes to
/linktextanalysis)
- Voice Assistant (routes to
- Responsive, visually engaging, and encourages user interaction.
- Voice input tool using browser's Web Speech API.
- Listens for user speech, transcribes, sends for threat analysis.
- Returns real-time risk result with confidence score.
- Paste or type any message/link for analysis.
- If a URL is detected, sent to VirusTotal API for threat intelligence.
- For text, uses keyword-based and pattern heuristics.
- Returns result with type (safe, suspicious, high-risk) and confidence.
- Shows a more detailed breakdown of the AI/heuristic risk scoring for a given input.
- Explains which features and patterns contributed to the score.
- Displays a simulated log/history of major threats, using mocked Algorand blockchain data structure for transparency and traceability.
- Contact form (name, email, subject, message) with validation and cyber-themed UI.
- Contact info and team details.
- No backend: demo only (messages not sent).
- Team and project background, vision, and roadmap.
- Responsive navigation bar.
- Links to all major sections and pages.
- "Try Now" button routes to the Try Now page.
- Uses a custom SVG logo.
- Persistent footer with:
- Custom SVG logo
- Social/documentation/contact links
- Copyright
- GitHub link points to Gunjan10-droid/cyberwhisper.
- Used to render feature sections with colorful icon backgrounds and details.
- Props: icon, title, desc, to, bg.
- Prominent in Features grid and Try Now page.
- Custom SVG favicon: shield, mic, and waves, fitting in a circle for perfect browser visibility.
- Tailwind CSS configuration for theme, colors, and custom utilities.
- Not committed!
- You must add your VirusTotal API key here as:
VIRUSTOTAL_API_KEY=your_key_here
-
Clone the repo:
git clone https://github.com/Gunjan10-droid/cyberwhisper.git cd cyberwhisper -
Install dependencies:
npm install
-
Add your VirusTotal API key:
Create a.envfile in the root and add:VIRUSTOTAL_API_KEY=your_key_here -
Start development server:
npm run dev
App runs at
http://localhost:5173(or as printed).
VIRUSTOTAL_API_KEY— Your VirusTotal public API key (free registration available).
- For any pasted URL, the app sends a request to VirusTotal for real-time threat scoring.
- For text/messages, heuristic and keyword-based analysis is used.
- No user data is permanently stored on the CyberWhisper servers (frontend only).
- Try It Now: Use the homepage demo or the /try-now page for quick access to both main features.
- Voice Assistant: Click the microphone, allow browser access, and speak your message.
- Link & Text Analysis: Paste any suspicious content and get instant feedback.
- Review Logs: Check the Blockchain Logging page for a transparent record of severe threats (simulated).
Contributions are welcome!
- Open issues for bugs or features.
- Fork and submit PRs for improvements.
- Please follow best practices, code style, and add documentation/comments.
- GitHub: Gunjan10-droid/cyberwhisper
- Email: [email protected]
Built with 🛡️ by Team CyberWhisper. Stay safe, stay ahead!