DARTX
Intelligent Dependency Management & Environment Assistant for VS Code
DARTX is a VS Code extension that automatically detects, diagnoses, and fixes dependency and environment issues in Python and Node.js projects. It monitors your terminal in real time, surfaces problems in a dedicated panel, and lets you resolve them with a single click — without ever leaving your editor.
Features
Real-Time Error Detection
DARTX listens to your integrated terminal and VS Code diagnostics simultaneously. The moment a ModuleNotFoundError, Cannot find module, or similar error appears, DARTX identifies the missing package, generates the correct install command, and presents it in the panel — no manual searching required.
Workspace Dashboard
Open the DARTX panel from the Activity Bar to see a live health score for your project. The dashboard shows:
- Health Score (0–100) with a colour-coded status
- Missing packages — imported but not installed
- Unused packages — declared but never imported
- Conflict report — version mismatches detected by
pip check / npm ls
Environment Doctor
Run DARTX: Run Environment Doctor from the Command Palette to get a full report on your Python or Node.js environment: runtime version, virtual environment status, and any configuration problems.
One-Click Fixes
Every detected issue comes with an Install button and a Copy Command button. DARTX validates the package against the official PyPI or npm registry before running anything, so you never accidentally install a typo-squatted package.
Environment Snapshots & Rollback
Before any install or repair operation, DARTX captures a snapshot of your manifest files (requirements.txt, package.json, Pipfile, pyproject.toml). If something goes wrong, you can restore the previous state instantly via DARTX: Export Environment Snapshot.
Project Setup Assistant
Point DARTX at a repository URL and it will clone the project and run the full environment setup for you — virtual environment creation, dependency installation, and validation — in one step.
Dependency Sync
DARTX: Sync Dependencies reconciles your manifest file with what is actually installed, installing missing entries and flagging extras.
Supported Technologies
| Category |
Supported |
| Languages |
Python, Node.js / TypeScript |
| Package Managers |
pip, npm, yarn, pnpm |
| Manifest Files |
requirements.txt, pyproject.toml, Pipfile, package.json |
| VS Code |
1.93.0 and later |
Getting Started
- Install DARTX from the VS Code Marketplace.
- Open a Python or Node.js project folder.
- DARTX activates automatically — no configuration needed.
- Run your code. If a dependency error appears in the terminal, a notification pops up with a one-click Install action.
- Click the DARTX icon in the Activity Bar to open the Workspace Dashboard at any time.
Commands
All commands are available via the Command Palette (Ctrl+Shift+P or Cmd+Shift+P):
| Command |
Description |
DARTX: Open Assistant Panel |
Opens the main dependency panel to view and fix issues. |
DARTX: Show Workspace Dashboard |
Shows the full project health dashboard. |
DARTX: Refresh Dependency Scan |
Re-scans the workspace for dependency issues immediately. |
DARTX: Run Environment Doctor |
Diagnoses your current Python or Node.js runtime environment. |
DARTX: Sync Dependencies |
Reconciles your manifest file with installed packages. |
DARTX: Create Project Environment |
Creates a virtual environment or runs npm install. |
DARTX: Cleanup Unused Dependencies |
Finds and helps remove declared but unused packages. |
DARTX: Repair Project Environment |
Runs a full repair sequence on the project environment. |
DARTX: Clone & Run Setup |
Clones a repository and sets up its environment automatically. |
DARTX: Export Environment Snapshot |
Saves a snapshot of your manifest files for backup or rollback. |
DARTX: Dependency Impact Analysis |
Analyzes the impact of removing a specific package. |
DARTX: Smart Upgrade Advisor |
Provides safe upgrade recommendations for your dependencies. |
Configuration
Search for DARTX in VS Code Settings (File › Preferences › Settings) or add these to your settings.json:
{
// Scan the workspace when a file is saved (recommended)
"dartx.scanOnSave": true,
// Verify packages exist in PyPI / npm before installing
"dartx.verifyPackagesBeforeInstall": true,
// Notification verbosity: "detailed" | "minimal" | "silent"
"dartx.notifications": "detailed",
// Block commands that contain injection characters
"dartx.safeMode": true,
// Languages to monitor
"dartx.languages": ["python", "javascript"]
}
All Settings
| Setting |
Type |
Default |
Description |
dartx.scanOnSave |
boolean |
true |
Re-scan when a file is saved |
dartx.scanOnStartup |
boolean |
false |
Scan on extension activation |
dartx.scanDelayMs |
number |
1200 |
Debounce delay before scanning (ms) |
dartx.notifications |
string |
"detailed" |
Notification verbosity level |
dartx.verifyPackagesBeforeInstall |
boolean |
true |
Registry check before install |
dartx.safeMode |
boolean |
true |
Block unsafe / injected commands |
dartx.autoFixDependencyIssues |
boolean |
false |
Auto-fix without prompting |
dartx.healthCheck |
boolean |
true |
Enable dashboard health checks |
dartx.languages |
array |
["python","javascript"] |
Languages to monitor |
Security
DARTX is built with a security-first approach:
- Explicit approval required — no silent installs, ever.
- Command allowlist — only known-safe command prefixes (
pip install, npm install, etc.) are permitted. Any command containing shell injection characters is rejected.
- Registry verification —
PackageValidator checks PyPI and npm before running an install, preventing typo-squatting attacks.
- Snapshot & rollback — environment state is captured before every mutation so you can always revert.
- No external services — all analysis is done locally using regex pattern matching. No data leaves your machine.
- Single-file bundle — the extension ships as one minified file (
esbuild), eliminating supply-chain risk from node_modules at install time.
How It Works
Terminal output / VS Code diagnostics
│
[Terminal Monitor]
│
[Error Analyzer] ── regex pattern matching
│
[Language Detector] ── Python vs Node.js
│
[Dependency Parser] ── reads manifest files
│
[PackageValidator] ── registry check (PyPI / npm)
│
[Issue Created] ── confidence score assigned
│
[Webview Panel] ── displays issue + install command
│
[SafeCommandExecutor] ── validates & runs command
│
[SnapshotManager] ── rollback if needed
Troubleshooting
Panel not showing issues?
- Confirm the error is printed to the VS Code integrated terminal (not an external window).
- Run
DARTX: Refresh Dependency Scan from the Command Palette.
- Check that
dartx.languages includes your project's language.
Install button does nothing?
- Ensure you have an active internet connection (registry verification requires it).
- Try
DARTX: Copy Install Command and run it manually to see the raw error.
- Verify
pip or npm is on your system PATH.
Dashboard shows wrong data?
- Click Refresh inside the dashboard, or run
DARTX: Refresh Dependency Scan.
- Make sure your manifest file (
requirements.txt / package.json) is in the workspace root.
Contributing
- Fork the repository on GitHub.
- Create a feature branch:
git checkout -b feature/my-feature
- Make your changes and run
npm test.
- Submit a pull request.
To add support for a new language:
- Add the language to
SupportedLanguage in src/types/types.ts.
- Add error patterns to
src/analyzer/errorAnalyzer.ts.
- Add install command logic to
src/commands/installCommandGenerator.ts.
License
MIT © 2024 Suravi R
Links