Skip to content

πŸ” Browser-based secret scanner that runs 100% locally. Detect hardcoded API keys, tokens, and credentials without sending data anywhere.

License

Notifications You must be signed in to change notification settings

nithinworks/vibeleaks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ” VibeLeaks - Client-Side Secret Scanner

MIT License React TypeScript Tailwind CSS

Browser-based secret scanner that runs 100% locally. Detect hardcoded API keys, tokens, and credentials in your code without sending data anywhere.

VibeLeaks Hero

πŸš€ Why VibeLeaks?

  • πŸ”’ 100% Private: All scanning happens in your browser - your code never leaves your machine
  • ⚑ Lightning Fast: Built with Web Workers for non-blocking, parallel scanning
  • 🎯 Accurate Detection: Uses proven patterns to detect 250+ secret types
  • πŸ“ Multi-File Support: Scan individual files or entire project directories
  • 🎨 Beautiful UI: Modern, responsive design with dark mode support
  • πŸ“Š Detailed Reports: Export results as JSON, Markdown, or CSV
  • πŸ”§ Developer-Friendly: No installation, no CLI, just open and scan

✨ Features

Core Scanning

  • βœ… Detect AWS keys, Google API keys, GitHub tokens, database credentials, and 250+ more secret types
  • βœ… Real-time scanning with progress indicators
  • βœ… Severity-based filtering (Critical, High, Medium, Low)
  • βœ… File tree visualization showing which files contain secrets
  • βœ… Syntax-highlighted code snippets showing exact leak locations

Security & Privacy

  • βœ… No data transmission - everything runs client-side
  • βœ… No backend - pure frontend application
  • βœ… No tracking - your code is your business
  • βœ… Open-source and auditable

User Experience

  • βœ… Drag & drop file upload
  • βœ… Paste code directly
  • βœ… Filter results by severity
  • βœ… Export reports in multiple formats
  • βœ… Responsive design (desktop & tablet optimized)
  • βœ… Dark/Light theme support
  • βœ… Gorgeous WebGL background effects

Supported Secret Types

Click to see all 250+ supported secret patterns
  • AWS Access Keys & Secret Keys
  • Google API Keys & OAuth tokens
  • GitHub Personal Access Tokens
  • Slack tokens & webhooks
  • Stripe API keys
  • Database connection strings (MySQL, PostgreSQL, MongoDB)
  • Private SSH keys
  • JWT tokens
  • Azure credentials
  • Heroku API keys
  • Twilio credentials
  • And 230+ more...

See vibeleaks-rules.json for the complete list.

🎯 Use Cases

  • Pre-commit checks: Scan your code before committing to catch secrets
  • Security audits: Review legacy codebases for hardcoded credentials
  • Learning tool: Understand what patterns constitute security risks
  • Code reviews: Quick verification during PR reviews
  • Open-source prep: Clean your codebase before open-sourcing

🚦 Getting Started

Online (Easiest)

Just visit vibeleaks.dev - no installation needed!

Local Development

  1. Clone the repository

    git clone https://github.com/nithinworks/vibeleaks.git
    cd vibeleaks
  2. Install dependencies

    npm install
  3. Start development server

    npm run dev
  4. Open your browser

    http://localhost:5173
    

Build for Production

npm run build

The production-ready files will be in the dist/ directory.

πŸš€ Deploy to Vercel

One-Click Deploy

Deploy with Vercel

Manual Deployment

  1. Install Vercel CLI (optional)

    npm install -g vercel
  2. Deploy

    vercel
  3. Production Deploy

    vercel --prod

Environment Configuration

No environment variables needed! VibeLeaks runs entirely client-side.

The vercel.json configuration is already included for:

  • βœ… SPA routing (all routes redirect to index.html)
  • βœ… Asset caching (1 year cache for static assets)
  • βœ… Security headers (CSP, XSS protection, etc.)

πŸ“– Usage

Quick Start

  1. Upload your code

    • Drag & drop files/folders onto the upload area
    • Or paste code directly into the text area
  2. Start scanning

    • Click "Scan for Secrets"
    • Watch real-time progress as files are analyzed
  3. Review results

    • See all detected secrets grouped by severity
    • Click on matches to view file location and code context
    • Filter by severity level (Critical/High/Medium/Low)
  4. Export findings

    • Download results as JSON for automation
    • Export as Markdown for documentation
    • Save as CSV for spreadsheet analysis

Example: Scanning a Project

# Navigate to your project
cd my-project

# Zip it (or select folder in browser)
zip -r project.zip .

# Upload to VibeLeaks and scan

πŸ—οΈ Technical Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                   React App                     β”‚
β”‚  (Main Thread - UI & State Management)          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
             β”‚
             β”‚ postMessage()
             β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚            Web Worker                           β”‚
β”‚  (Background Thread - Heavy Scanning Logic)     β”‚
β”‚                                                 β”‚
β”‚  β€’ Parses files                                 β”‚
β”‚  β€’ Applies regex patterns                       β”‚
β”‚  β€’ Matches against Gitleaks rules               β”‚
β”‚  β€’ Returns results                              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Technologies

  • React 18 - UI framework
  • TypeScript - Type safety
  • Vite - Build tool & dev server
  • Tailwind CSS - Styling
  • Web Workers - Non-blocking scanning
  • Three.js - WebGL background effects
  • 250+ Detection Patterns - Comprehensive secret detection

πŸ› οΈ Configuration

The scanner uses detection rule definitions from src/config/vibeleaks-rules.json. You can:

  • Add custom rules
  • Modify severity levels
  • Adjust regex patterns
  • Disable specific detectors

See CONTRIBUTING.md for details on adding new rules.

🀝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for details on:

  • How to report bugs
  • How to suggest features
  • Code style guidelines
  • Pull request process

πŸ“‹ Roadmap

v1.1 - Enhanced Detection

  • Add support for custom rule files
  • Entropy-based detection for unknown secrets
  • Machine learning-based false positive reduction

v1.2 - Developer Experience

  • VS Code extension
  • CLI version for CI/CD integration
  • GitHub Action
  • Pre-commit hook template

v1.3 - Advanced Features

  • Secret rotation guidance
  • Integration with secret management tools (1Password, Vault)
  • Historical scan comparison
  • Team collaboration features

v2.0 - Platform Expansion

  • Browser extension (Chrome/Firefox)
  • Mobile responsive scanning
  • Real-time code editor integration
  • API for programmatic access

Want to help? Check open issues or suggest new features!

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Gitleaks - For the excellent secret detection rules
  • Security Community - For ongoing research into secret detection patterns

πŸ“ž Support

⚠️ Disclaimer

VibeLeaks is a detection tool and may produce false positives or miss certain patterns. Always:

  • Review results manually
  • Use in combination with other security practices
  • Rotate any discovered secrets immediately
  • Never commit secrets to version control

Made with ❀️ by the open-source community

If VibeLeaks helped secure your code, give us a ⭐ on GitHub!

About

πŸ” Browser-based secret scanner that runs 100% locally. Detect hardcoded API keys, tokens, and credentials without sending data anywhere.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages