Skip to main content
العودة إلى المنتجات
vscode

DotEnvy

إدارة ملفات .env بسهولة في VS Code

3 نجوم1 تفرُّع1 مشاكل2,025 تنزيلاتالإصدار v2.2.1VSX 2.1.3
DotEnvy • README•8 min read

dotenvy – VS Code Environment Manager

Version Codename Publisher License: Apache 2.0 VS Code Marketplace

DotEnvy Variable ManagerDotEnvy Variable Manager

🚀 dotenvy makes it effortless to manage and switch between your .env files directly inside VS Code. No more manual renaming or copy-pasting—just pick your environment and start coding immediately!

📥 Install from VS Code Marketplace • 📖 Documentation • 🐛 Report Issues


✨ Features

🔄 Environment Switching

Effortlessly switch between .env.development, .env.staging, .env.production, or any custom .env.* file with a single click.

🌐 Full Deep Internationalization (New in v2.2.1!)

Native support for English, Italian (it), Arabic (ar) (with full RTL support), and Russian (ru), with a seamless sidebar dropdown to switch languages instantly across all dialogs, dashboards, and panels (Variable Manager, Trash Bin, History, Timeline, Analytics, and Secrets Scanner).

🎨 Compact Sidebar & Onboarding Banner (New!)

A modern, space-efficient sidebar design tailored for narrow split screens, complete with an interactive onboarding setup banner for newly opened repositories.

☁️ Advanced Cloud Sync & Doppler Integration

Bidirectional cloud sync with Doppler Secrets Manager, supporting multi-file prefix routing (BACKEND_, FRONTEND_), orphan key cleanup, and automatic project discovery.

📂 Auto Detection & Sync

Automatically scans your workspace for .env files and syncs seamlessly across multi-workspace setups.

🌿 Git Branch Auto-Switching

Automatically switch environments based on Git branch changes (develop → .env.development, staging → .env.staging, etc.)

✅ Environment Validation

Validate .env files for syntax errors, required variables, and type checking with custom regex patterns.

📄 Diff View

Compare environment files side-by-side before switching to preview changes and avoid surprises.

🛡️ Git Commit Security & Monorepo Support

Prevent committing sensitive data with pre-commit hooks that scan for secrets, validation errors, and block .env files, featuring smart git root discovery for monorepos.

💾 Backup & Recovery

Automatic backup creation before switching, with portable AES-256-GCM encrypted backups that work across any device.

📊 Status Bar Integration

Real-time environment indicator in status bar showing current configuration, validation status, and cloud sync state.

🚀 What's New in v2.2.0?

🌟 Community Spotlight & Thank You!

A heartfelt thank you to @FaberVi for contributing PR #2, bringing full Italian localization, sidebar UX modernization, Doppler multi-file prefix mapping, and monorepo git hooks. We apologize for the delay in reviewing and integrating your PR while we were re-architecting the core security engine. Your contributions are now a proud part of DotEnvy!

🌐 Complete Italian Localization & Custom Switcher

DotEnvy is now fully localized into Italian across the entire extension! Every command, notification, and webview panel (including Variable Manager, Trash Bin, Timeline, History, Analytics, and Secrets Scanner) supports seamless, instant switching between English and Italian from the sidebar without restarting your editor.

🎨 Compact Sidebar Redesign & Toasts

Redesigned with a compact responsive layout for sidebars, plus clean in-panel toast notifications and progress bars.

☁️ Doppler Multi-File Sync & Cleanups

Easily split and merge Doppler secrets across multiple .env files using environment prefixes, with automatic orphan variable cleanup.

🗑️ Session Trash Bin (Lifesaver!)

Deleted a crucial variable by mistake? No worries. Restore it with a single click from the new Session Trash Bin. Trash Bin DemoTrash Bin Demo

🔍 Native VS Code Diff & History

Review your .env changes exactly like you review Git commits. Native Diff DemoNative Diff Demo

📊 Environment Analytics

Track your usage, stability metrics, and most active environments directly from your dashboard. Analytics DashboardAnalytics Dashboard

⚙️ Compact Switcher & Settings

Manage all your environments seamlessly from a clean, native sidebar. Environment SwitcherEnvironment Switcher

🧠 AI Secrets Guard (Enterprise Grade) 🔒

Production-grade secret detection powered by a custom ML model with HMAC-secured communication and an interactive Secrets Panel.

Key Engine Features:

  • 🔐 OS-Encrypted Secret Storage — Shared secret stored in VS Code SecretStorage (Keychain / libsecret / Credential Manager), never in the compiled bundle
  • 35-Feature ML Model (fixed) — Feature count corrected from 31 → 35, entropy normalization fixed to match Python backend exactly
  • 📋 Secrets Panel — Full WebviewPanel shows all detected secrets (no more 5-item cap) with filter by confidence, search, View / Move to .env / Not a Secret buttons
  • 🧠 AI Training Feedback — "Not a Secret" and "Move to .env" send labeled training samples to the Railway model — it learns from your corrections
  • 🚫 .dotenvyignore — New file (same syntax as .gitignore) lets you exclude files and folders from secret scanning
  • 📝 Centralized Logging — All extension logs visible in VS Code Output panel → DotEnvy
  • 🔄 Smart Fallback — Local fallback analysis uses all 35 features including variable name signals (e.g. DB_PASS increases risk even with low entropy)

🔒 Data Privacy & Security (Secrets Guard)

We take your code's security seriously. Here is exactly how DotEnvy handles your data during AI secret scanning:

  • Targeted Analysis: DotEnvy does NOT upload your entire workspace. Only the specific line containing a suspected secret (and its immediate surrounding context) is sent to our LLM engine for verification.
  • Zero Retention (Ephemeral Processing): The secret_value and context sent for analysis are processed exclusively in-memory. We do not store, log, or save your source code or secrets on our servers.
  • Opt-in Model Training: We only use data to train our ML models when you explicitly provide feedback (e.g., clicking "Not a Secret" or "Move to .env"). This sends 35 anonymized numerical features and your action label.
  • Secure Communication: All API requests are strictly authenticated using a unique X-Machine-ID and an HMAC X-Extension-Signature to prevent abuse and secure data in transit.

📋 Commands

All commands are accessible via the Command Palette (Ctrl+Shift+P / ⌘+Shift+P).

🔄 Environment Manager

  • DotEnvy: Switch Environment — Switch between .env files
  • DotEnvy: Open Variable Manager — Open the full-page variable editor tab
  • DotEnvy: Validate Environment Files — Validate for syntax errors and required variables

📊 Explorers & Analytics

  • DotEnvy: View Environment History — View the dense history table and slide-over advanced filters
  • DotEnvy: Open Trash Bin — Recover accidental deletions or changes in real-time
  • DotEnvy: Open Analytics Panel — View heatmap and stability metrics
  • DotEnvy: Open Timeline Panel — View the SVG timeline viewer tab

🛡️ Git Integration

  • DotEnvy: Install Git Commit Hook — Block commits containing secrets
  • DotEnvy: Remove Git Commit Hook — Remove the installed hook

☁️ Cloud Sync

  • DotEnvy: Pull Environment from Cloud — Pull from Doppler
  • DotEnvy: Push Environment to Cloud — Push to Doppler

🔍 Security

  • DotEnvy: Scan for Secrets — Scan workspace with AI-powered detection; opens Secrets Panel with all findings
  • DotEnvy: Init .dotenvyignore — Create a pre-populated .dotenvyignore file
  • DotEnvy: Setup LLM Secret — Store the HMAC shared secret securely in OS vault

🖱️ Right-Click (Explorer)

  • DotEnvy: Ignore this path — Right-click any file or folder → add to .dotenvyignore instantly

💬 Support

  • DotEnvy: Feedback & Support — Access feedback and support resources
  • DotEnvy: Show What's New — View changelog for current version

🚫 .dotenvyignore

Control which files DotEnvy skips when scanning for secrets — same syntax as .gitignore:

GITIGNORE
# .dotenvyignore

# DotEnvy's own data (always recommended)
.dotenvy/**
.dotenvy-backups/**

# Test files (often contain example secrets)
**/*.test.ts
**/*.spec.ts
tests/**

# Docs with example secrets
docs/**
README.md
SECURITY.md

# Specific files
k8s/secrets.yaml

Run DotEnvy: Init .dotenvyignore to create a default file, or right-click any file/folder in the Explorer and choose "DotEnvy: Ignore this path".


📦 Installation

Quick Install

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X / ⌘+Shift+X)
  3. Search for "dotenvy"
  4. Click Install

Alternative Methods

Requirements

  • VS Code 1.90.0 or later

🚀 Usage

  1. Place your environment files in your project root:

    BASH
    .env.development
    .env.staging
    .env.production
  2. Open the Command Palette (Ctrl+Shift+P).

  3. Run DotEnvy: Switch Environment and pick your environment.

  4. The selected file is copied to .env automatically.

✅ The status bar updates to show the active environment.


⚙️ Configuration

JSONC
// .dotenvy.json
{
  "environments": {
    "local": ".env.local",
    "qa": ".env.qa",
    "prod": ".env.production"
  },
  "gitBranchMapping": {
    "develop": "development",
    "staging": "staging",
    "main": "production"
  },
  "autoSwitchOnBranchChange": true,
  "validation": {
    "requiredVariables": ["API_KEY", "DATABASE_URL"],
    "variableTypes": {
      "PORT": "number",
      "DEBUG": "boolean",
      "API_URL": "url"
    }
  },
  "gitCommitHook": {
    "blockEnvFiles": true,
    "blockSecrets": true,
    "blockValidationErrors": true
  }
}

☁️ Cloud Sync Setup (Doppler)

JSONC
{
  "cloudSync": {
    "provider": "doppler",
    "project": "your-project-name",
    "config": "development",
    "token": "dp.pt.your_token_here"
  }
}

🗺️ Roadmap & Contributing

For upcoming features, see ROADMAP.md.
Issues and PRs are welcome! Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.


👥 Contributors & Special Thanks

Special thanks to @FaberVi for authoring the Italian localization, custom dropdown language switcher, compact sidebar design, and Doppler multi-file sync improvements in PR #2.


📜 License

This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.

منتجات مشابهة

‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌