Argus is an enterprise-grade SaaS platform that provides AI-driven risk intelligence for organizations. It discovers your digital footprint, analyzes risks across multiple dimensions, and provides executive-ready insights prioritized by business impact.
- Automated Asset Discovery: Continuously discover and map your entire external attack surface
- AI-Driven Risk Scoring: Machine learning algorithms evaluate risks across exposure, exploitability, business impact, and temporal change
- Business-Context Prioritization: Risks prioritized based on actual business impact, not just technical severity
- Executive-Ready Dashboards: Beautiful visualizations and reports for technical and business stakeholders
- Continuous Monitoring: Real-time monitoring and alerts for new assets and emerging risks
- Comprehensive Reporting: Export detailed reports in multiple formats
- Backend: Node.js, Express.js
- Authentication: JWT, bcrypt
- Frontend: Vanilla JavaScript, HTML5, CSS3
- Visualization: Chart.js
- Email: Nodemailer
- Node.js 14+ and npm
- Clone the repository
- Install dependencies:
npm install- Configure environment variables:
cp .env.example .envEdit .env and set:
JWT_SECRET: Your secret key for JWT tokensEMAIL_USER: (Optional) Gmail address for notificationsEMAIL_PASS: (Optional) Gmail app password
- Start the server:
npm start- Open your browser and navigate to
http://localhost:3001
Register a new user account.
Request Body:
{
"name": "John Doe",
"email": "john@example.com",
"password": "password123",
"organization": "Acme Corp"
}Response:
{
"token": "jwt_token_here",
"user": {
"id": 1,
"email": "john@example.com",
"name": "John Doe",
"organization": "Acme Corp"
}
}Login to an existing account.
Request Body:
{
"email": "john@example.com",
"password": "password123"
}All analysis endpoints require authentication via Bearer token in the Authorization header.
Analyze a domain for security risks.
Headers:
Authorization: Bearer <token>
Request Body:
{
"domain": "example.com"
}Response:
{
"id": 1,
"domain": "example.com",
"overallRiskScore": 65,
"overallRiskLevel": "High",
"totalAssets": 27,
"criticalAssets": 3,
"highRiskAssets": 8,
"mediumRiskAssets": 12,
"lowRiskAssets": 4,
"assets": [...],
"riskTrend": [...],
"analyzedAt": "2024-01-15T10:30:00.000Z"
}Get all analyses for the authenticated user.
Get a specific analysis by ID.
Export an analysis as JSON file.
argus-platform/
├── server.js # Express server and API endpoints
├── public/
│ ├── index.html # Landing page and dashboard UI
│ ├── styles.css # Styling and design system
│ └── app.js # Frontend logic and interactions
├── .env # Environment variables
├── .env.example # Environment variables template
├── package.json # Dependencies and scripts
└── README.md # This file
- Uses bcrypt for password hashing
- JWT tokens for stateless authentication
- CORS enabled for cross-origin requests
- In-memory storage (replace with database for production)
- Environment variables for sensitive configuration
See DEPLOYMENT.md for detailed deployment instructions for various platforms.
# Install dependencies
npm install
# Start development server
npm run devThe server will start on http://localhost:3001.
ISC License
For issues and feature requests, please contact your system administrator.