Skip to content

Repository files navigation

Company Logo

EnvSight Logo

EnvSight

Stop guessing what environment variables your project needs.


If you've ever pulled a branch, run npm start, and watched the app explode because someone added a new STRIPE_KEY without telling anyone, you'll understand exactly why EnvSight exists.

EnvSight is a totally local, open-source tool that reads your code, figures out exactly what environment variables are actually being used, and makes sure you (and your CI pipeline) know about them before things break.

🛠️ How It Works

Instead of relying on fragile regex searches or third-party cloud services to manage your .env files, EnvSight reads your project's Abstract Syntax Tree (AST).

Here’s the breakdown:

  1. The Scan: Our fast Rust engine traverses your codebase, skipping node_modules and target folders.
  2. The Discovery: It parses your TypeScript/JavaScript files using tree-sitter to find exact references to things like process.env.API_KEY or process.env.DB_PASSWORD.
  3. The Schema: It takes those discovered variables and instantly hands you back a ready-to-use validation schema (like Zod), and alerts you if any required variables are missing locally.

There is zero telemetry. Everything happens on your machine.


🚀 How to Install and Run Locally

You don't need any complicated setups. Since EnvSight ships as a desktop app powered by Tauri, installation is straightforward.

1. Download and Build

Clone this repository to your machine and install the initial dependencies:

git clone https://github.com/Ateflow/envsight.git
cd envsight
npm install

2. Launch the App

To open the EnvSight Dashboard graphical interface, simply run:

npm run tauri dev

The app will automatically pop open, scan the folder you ran it in, and immediately build a dashboard showing every environment variable powering your project.

3. Run Headless (CLI)

If you just want to run a quick terminal scan without the UI (perfect for CI/CD environments), use the CLI mode:

cargo run --bin tauri-app -- --scan .

📖 Quick Usage Guide

Using EnvSight is meant to be highly visual and low-friction.

Tip

The absolute best workflow when you download a new codebase is to fire up EnvSight before you ever try to start the development server.

Understanding the Dashboard

When you open EnvSight, you'll see a dark-slate UI split into a few sections:

  • Discovered Variables Table: This lists every single process.env.* variable we caught hiding in your code. You'll see the key name, how many files it was found in, and a validation status.
  • Validation Status: If EnvSight sees a local .env file that's missing keys your code asks for, you'll immediately see warnings on this dashboard. No more guessing what's broken!
  • Schema Output: On the right side of the screen, EnvSight automatically writes a Zod validation schema for you. You don't need to manually type out your z.object(). Just hit the "Copy" icon and drop it right into your src/env.ts file to lock in type safety.

Using the GitHub Action

You can block bad Pull Requests by adding our included Action to your repo. It runs the CLI engine over the PR's codebase. If the developer added process.env.NEW_API_URL to the code but didn't update the schema or documentation, EnvSight throws an exit code 1 and blocks the merge.

🤝 Contributing

Found a bug? Want to add Python or Go support to the AST parser? PRs are always welcome. Just ensure you've run the cargo checks before submitting.


License: MIT

About

End environment configuration drift forever. Local-first variable discovery, auto-generated schemas, and native CI validation.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages