cruxify
v1.0.11
Published
Production Readiness Analyzer - scan any codebase for deployment readiness with security, complexity, and quality analysis
Maintainers
Readme
Cruxify CLI
Production Readiness Analyzer — determine if your code is ready for deployment.
██████╗██████╗ ██╗ ██╗██╗ ██╗██╗███████╗██╗ ██╗
██╔════╝██╔══██╗██║ ██║╚██╗██╔╝██║██╔════╝╚██╗ ██╔╝
██║ ██████╔╝██║ ██║ ╚███╔╝ ██║█████╗ ╚████╔╝
██║ ██╔══██╗██║ ██║ ██╔██╗ ██║██╔══╝ ╚██╔╝
╚██████╗██║ ██║╚██████╔╝██╔╝ ██╗██║██║ ██║
╚═════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═╝Analyze any codebase (Python, JavaScript, TypeScript, PHP, SQL, HTML, CSS) for:
- 🔒 Security vulnerabilities (Bandit, npm audit, pip-audit)
- 📊 Code complexity (Cyclomatic complexity, Maintainability Index)
- 🔁 Code duplication detection
- 🧹 Code quality (linting, style, type safety)
- 📦 Dependency issues (CVEs, missing lockfiles)
- 🤖 AI-powered fix suggestions (optional, via Groq)
Output: Terminal report, HTML dashboard, and PDF — all in one scan.
Installation
npm install -g cruxifyUsage
Interactive mode (recommended)
cruxifyLaunches an interactive menu to choose between GitHub URL or local folder.
Non-interactive
# Analyze a GitHub repository
cruxify scan --url https://github.com/owner/repo
# Analyze a local folder
cruxify scan --path ./my-project
# Skip PDF generation (faster)
cruxify scan --path . --no-pdf
# Skip HTML report
cruxify scan --url https://github.com/owner/repo --no-html
# Custom reports directory
cruxify scan --path . --reports-dir ~/cruxify-reportsFeatures
✅ 8-Dimension Scoring System (Security, Maintainability, Complexity, Duplication, Dependencies, Style, Type Safety, Documentation)
✅ Multi-Language Support (Python, JavaScript, TypeScript, PHP, SQL, HTML, CSS)
✅ Automated Reports (Terminal + HTML + PDF)
✅ Complexity Heatmaps (identify hot spots)
✅ AI Suggestions (optional Groq integration)
✅ Exit Codes for CI/CD integration
✅ Fast (deterministic analysis, no model inference required)
What gets analyzed
Per-Language Tools
| Language | Tools | |-------------|-------------------------------| | Python | Ruff, Flake8, Bandit, Radon | | JavaScript | ESLint (inline rules) | | TypeScript | ESLint-TS, tsc --noEmit | | PHP | PHPStan | | SQL | Custom SQLLint (anti-patterns) | | HTML | Custom HTMLLint (a11y, security)| | CSS | Custom CSSLint (bad practices) |
Cross-Language Analysis
- Cyclomatic Complexity (Radon CC)
- Maintainability Index (Radon MI)
- Code Duplication (jscpd)
- Dependency Audits (pip-audit, npm audit)
- Security Issues (.env files, HTTP resources, SQL injection patterns)
Scoring
8 weighted dimensions:
- Security (25%)
- Maintainability (20%)
- Complexity (15%)
- Duplication (10%)
- Dependencies (10%)
- Code Style (10%)
- Type Safety (5%)
- Documentation (5%)
Grades:
A ≥ 90 · B ≥ 75 · C ≥ 55 · D ≥ 35 · F < 35
Output
- Terminal: Beautiful colored output with score, grade, dimension breakdown, and findings
- HTML Report: Saved to
./reports/by default (professional dashboard) - PDF Report: Rendered via Chromium/Puppeteer (optional)
Exit codes
| Code | Meaning |
|------|---------------------------|
| 0 | Success (score ≥ 35) |
| 1 | Error (analysis failed) |
| 2 | Critical (score < 35) |
AI Suggestions (Optional)
Set CRUXIFY_GROQ_API_KEY environment variable to get AI-powered fix recommendations:
export CRUXIFY_GROQ_API_KEY=your_key_here
cruxify scan --url https://github.com/owner/repoGet a free API key at console.groq.com.
Examples
Analyze a public GitHub repo
cruxify scan --url https://github.com/django/djangoAnalyze current directory
cruxify scan --path .Skip PDF generation (faster)
cruxify scan --path . --no-pdfCustom output directory
cruxify scan --url https://github.com/owner/repo --reports-dir ~/my-reportsRequirements
- Node.js ≥ 18.0.0
- Internet connection (to reach analysis backend)
Links
- GitHub: https://github.com/YOUR_USERNAME/Cruxify
- Issues: https://github.com/YOUR_USERNAME/Cruxify/issues
- Documentation: See GitHub README
License
MIT
Support
Found a bug or have a feature request? Open an issue!
