CyberGuard is a full-stack application for data breach detection and digital identity protection. It allows users to check if their personal information (email, phone, credit card) has been compromised in known data breaches, receive breach notifications, and view detailed security reports.
- Features
- Project Structure
- Tech Stack
- Getting Started
- Environment Variables
- Scripts
- API Endpoints
- Contributing
- License
- Data Breach Detection: Check if your email, phone, or credit card has been leaked.
- Breach Notifications: Get alerts when your data appears in new breaches.
- Detailed Reports: View comprehensive breach and risk analysis.
- User Authentication: Secure login and signup with Firebase.
- Modern UI: Responsive React frontend with Tailwind CSS.
- Admin Dashboard: (Optional) For managing breach data.
CyberGuard-main/
│
├── backend/ # Python backend for scraping/scheduling (optional)
│ ├── app.py
│ ├── config.py
│ ├── requirements.txt
│ └── ...
│
├── client/ # React frontend
│ ├── src/
│ ├── public/
│ ├── package.json
│ ├── tailwind.config.js
│ └── ...
│
├── server/ # Node.js/Express backend API
│ ├── app.js
│ ├── server.js
│ ├── models/
│ │ └── breachDataModel.js
│ ├── routes/
│ │ └── searchRoutes.js
│ ├── package.json
│ └── ...
│
└── README.md
- Frontend: React, TypeScript, Tailwind CSS, Vite, Firebase Auth
- Backend: Node.js, Express, MongoDB (Mongoose)
- Python Backend (optional): For scraping/scheduling breach data
- Other: Lucide React Icons, Styled JSX
- Node.js (v18+ recommended)
- npm or yarn
- MongoDB (local or Atlas)
- Python 3.10+ (for backend scrapers, optional)
git clone https://github.com/yourusername/CyberGuard.git
cd CyberGuard-maincd server
npm install
# Create a .env file with your MongoDB URI and other secrets
npm run devcd ../client
npm install
# Copy .env.sample to .env and set your API endpoint if needed
npm run devcd ../backend
pip install -r requirements.txt
# Run scrapers or scheduler as needed
python app.pyMONGODB_URI=mongodb+srv://<username>:<password>@cluster.mongodb.net/cyberguard
PORT=5000
VITE_API_URL=http://localhost:5000
# Firebase config variables as needed
npm run dev— Start Express server with nodemon
npm run dev— Start React development servernpm run build— Build for productionnpm run lint— Lint code
GET /api/search?email=example@email.comGET /api/search?phone=1234567890GET /api/search?q=keyword
Response:
{
"success": true,
"count": 1,
"breached": true,
"searchTerm": "example@email.com",
"searchType": "email",
"data": [ ... ],
"message": "Breaches found"
}GET /api/health
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
CyberGuard — Protecting your digital identity from data breaches and cyber threats.