TL;DR: Combine semantic-release + SonarQube + documentation generation into ONE tool. Analyze code impact automatically. No more guessing what breaks when you deploy.
*The Problem Nobody Talks About
*
It's 3 AM on Friday. You deploy a "small fix" to production.
Two hours later, your Slack is on fire.
"Why can't we log in?"
"The mobile app is broken"
"Payment processing failed"
You search the code for what changed. You check git logs. You manually trace through 3 different services trying to understand the ripple effect of your change.
This shouldn't be this hard.
Every DevOps tool solves ONE problem:
-
semantic-release→ versions only -
SonarQube→ code smells only -
GitHub Release Notes→ manual, incomplete - Dependency trackers → just list files
None of them answer the REAL question:
"What actually breaks when I change this?"
What If You Could Know... Before Deploying?
We built NEXUS. It's an MCP server that does 5 things at once:
1. Source Analysis - Understand What Changed
Reads your conventional commits, parses code diffs, detects:
- ✅ Function signature changes (breaks consumers)
- ✅ Exported symbol removals (breaks imports)
- ✅ Type changes (TypeScript/Python)
- ✅ API contract violations
- ✅ Breaking changes at multiple levels
2. Impact Calculator - See the Ripple Effect
Builds your complete dependency graph, then calculates:
- Which files are affected (direct)
- Which services break (indirect)
- How many consumers need updates
- Risk score (0-1 scale)
Your change:
src/auth.ts: verifyToken() signature changed
NEXUS calculates:
├── Direct consumers: 3 files
├── Indirect consumers: 12 files
├── External packages: 2 services
├── Risk score: 0.85 (HIGH)
└── Estimated work: 3-5 days
3. Version Analysis - Semver Done Right
Follows conventional commits → automatically suggests version bump:
v1.0.0
├── BREAKING CHANGE footer? → v2.0.0
├── feat: → v1.1.0
└── fix: → v1.0.1
4. Release Notes Generator - Professional Documentation
Auto-generates markdown with:
- Breaking changes (with migration guides)
- New features (with examples)
- Bug fixes (organized by component)
- Contributors
- Timeframe for updates
# 2.0.0 - Released Apr 22, 2024
## ⚠️ Breaking Changes
### auth.verifyToken() signature changed
**Why**: Improved security
**Migration time**: ~5 min
**Affected**: 3 consumers
Before:
typescript
const verified = verifyToken(token);
After:
typescript
const verified = verifyToken(token, { algorithm: 'HS256' });
## 🎉 New Features
...
plaintext
5. Technical Debt Analyzer - Future-Proof Your Code
Detects problems BEFORE they bite you:
- Cyclomatic complexity per function
- Code duplication
- Functions that are too long
- Missing tests
- Unresolved TODOs
- Predicted breaking points (ML-based)
Real Example: How It Saved Us
We have a mid-sized app: 340 TypeScript files, 5 services.
Scenario: Refactored src/auth/verify.ts to use a new algorithm.
Without NEXUS:
Deploy → Test manually → Find 3 broken services
→ Hotfix at 2 AM → Another deploy
→ 6 hours of chaos
plaintext
With NEXUS:
git push → NEXUS analyzes
→ "Breaking change detected: 3 direct consumers, 12 indirect"
→ "Risk score: 0.85"
→ "Create migration PR for: auth.ts, api.ts, controllers/user.ts"
→ "Estimated work: 3 days"
→ We KNOW before deploying
→ We coordinate updates
→ Deploy happens smoothly
plaintext
How It Works (The Tech)
The Process
- Parse commits between two versions
-
Extract code changes:
- Function signatures
- Type definitions
- Exported symbols
-
Build dependency graph:
- Direct imports
- Re-exports
- Dynamic imports (when possible)
-
Calculate ripple effects:
- Consumers of each changed file
- Transitivity (if A imports B and B changed, A breaks)
-
Risk scoring:
- Breaking changes = 2x risk
- Critical files = 2x risk
- Many consumers = risk
-
Workload estimation:
- ~5 files per day baseline
- 50% more for breaking changes
Multi-Language Support
Works with:
- TypeScript ✅ (full AST parsing, type inference)
- JavaScript ✅ (dynamic imports handled)
- Python ✅ (AST analysis)
- Java/Go ✅ (structural analysis)
Performance
Tested on real projects:
Syncwave (45 files) → 0.2 seconds
Medium App (340 files) → 1.2 seconds
Large App (2400 files) → 8.5 seconds
json
Installation
As an MCP Server (Recommended)
# In your Claude config
{
"mcpServers": {
"nexus": {
"command": "npx",
"args": ["@frxncisxo/nexus"],
"env": {
"NEXUS_REPO": "/path/to/your/repo"
}
}
}
}
Then in Claude:
"Analyze impact of my recent changes"
"Generate release notes from v1.0.0 to HEAD"
"What's the technical debt in my codebase?"
As an NPM Package
npm install -D @frxncisxo/nexus
import { Nexus } from '@frxncisxo/nexus';
const nexus = new Nexus({
repositoryPath: '/path/to/repo',
languages: ['ts', 'js', 'py'],
enableMLAnalysis: true,
});
// Analyze impact
const impact = await nexus.analyzeImpactFromCommits('v1.0.0', 'HEAD');
console.log(impact);
// {
// breakingChanges: true,
// riskScore: 0.65,
// directlyAffected: ['src/auth.ts', 'src/api.ts'],
// estimatedWorkDays: 3,
// }
// Generate release notes
const { versionAnalysis, markdown } = await nexus.generateReleaseNotes('v1.0.0', 'HEAD');
console.log(versionAnalysis.suggestedVersion); // "2.0.0"
console.log(markdown); // Full markdown file
Why We Built This
Existing tools are fragmented:
| Need | Tool | Problem |
|---|---|---|
| Versioning | semantic-release |
Doesn't analyze impact |
| Code quality | SonarQube |
Doesn't understand your changes |
| Docs | conventional-changelog |
Manual, stale |
| Tech debt | Various linters | Reactive, not predictive |
We wanted ONE tool that:
- ✅ Understands code deeply
- ✅ Predicts impact before deploy
- ✅ Generates docs automatically
- ✅ Works with your existing workflow
- ✅ No tool integration nightmare
Real-World Use Cases
1. Enterprise Deployments
"We need to know what breaks before we deploy to 100k users"
2. Monorepo Management
"Change in workspace A affects workspace B and C... where else?"
3. API Versioning
"Can we deprecate this endpoint?" → "Yes, 1 consumer, we can migrate in 3 hours"
4. Team Onboarding
"What changed in the last sprint?" → Automatic migration guide for new devs
5. Release Planning
"Should this be 1.0.1 or 2.0.0?" → NEXUS knows
What's Next?
- 🔜 GitHub Actions integration
- 🔜 Slack notifications ("Hey, this is a breaking change!")
- 🔜 VS Code extension
- 🔜 Web dashboard for teams
- 🔜 Enterprise features (custom rules, Jira integration)
Try It Now
Option 1: Use with Claude (easiest)
Add to your claude.json config, then ask:
"What's the impact of my recent changes?"
Option 2: Use as CLI
npx @frxncisxo/nexus impact v1.0.0 HEAD
npx @frxncisxo/nexus release v1.0.0 HEAD --markdown
npx @frxncisxo/nexus debt
Option 3: Use as library
npm install @frxncisxo/nexus
The Bigger Picture
At 3 AM on Friday, you don't want to debug production. You want to know before you deploy what's going to break.
NEXUS is that early warning system.
It's what every team building in the cloud actually needs, but nobody built it until now.
Links
- GitHub: github.com/frxcisxo/nexus
- NPM: @frxncisxo/nexus
- MCP: Add to your Claude configuration
Questions? Open an issue on GitHub or reach out. We built this for you.
Made with ❤️ by developers, for developers.
Share This
If you found this useful, share with your team!
- DevOps engineers → Impact analysis before deploy
- Release managers → Automatic versioning + docs
- Tech leads → Understand codebase complexity
- New team members → Migration guides when things change
Originally published on [Dev.to / Medium / HashNode]. Follow for more tools that actually solve problems.
Top comments (0)