Scanx is a versatile regex-based artifact scanner designed to help teams and individuals identify sensitive data across local directories, GitHub repositories, and Splunk-integrated environments. It also leverages the Mistral AI API to suggest regex patterns based on project types, offering comprehensive scanning capabilities.
- Local Directory Scanning: Perform regex-based scans on local directories to detect sensitive information.
- GitHub Repository Scanning: Scan GitHub repositories via the GitHub API to identify artifacts.
- Dynamic Scanning: Integrate with Splunk for real-time scanning of logs and dynamic data streams.
- Generate detailed scan reports.
- Options to download or email the reports.
- Use the Mistral AI API to get regex pattern suggestions based on your project's type.
- Personal Accounts:
- Scan projects and generate reports.
- Manager/Team Accounts:
- Add team members.
- View all scans conducted by added users.
- Enterprise/Admin Accounts:
- View all scans conducted across all teams and users.
Create a .env
file and include the following variables:
GITHUB_TOKEN
: Token for accessing the GitHub API. How to generate a GitHub token.MONGO_DB_URI
: MongoDB connection string.MISTRAL_API_KEY
: API key for Mistral AI regex suggestions.How to generate a Mistral API KeyEMAIL
: Email address used to send reports.EMAIL_PASSWORD
: Application-specific password for the sender email. How to generate a Google App Password.JWT_SECRET
: Secret key for JSON Web Token (JWT) authentication.
SPLUNK_HOST
: Splunk server host.SPLUNK_PORT
: Splunk server port.SPLUNK_USERNAME
: Splunk username.SPLUNK_PASSWORD
: Splunk password.
- Create a
.env
file and populate it with the required variables. - Navigate to the frontend and backend directories and run:
npm install
- Start the development servers:
npm run dev
We welcome contributions from the community. If you are interested in contributing, please fork the repository and submit a pull request.