{"id":15021610,"url":"https://github.com/sametcn99/env-protector","last_synced_at":"2025-10-30T20:52:25.376Z","repository":{"id":257054872,"uuid":"857205171","full_name":"sametcn99/env-protector","owner":"sametcn99","description":"Protect your environment files from being exposed","archived":false,"fork":false,"pushed_at":"2024-09-21T18:33:55.000Z","size":2241,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-29T06:42:12.731Z","etag":null,"topics":["environment-variables","privacy-extension","privacy-protection","vscode","vscode-extension","vscode-plugin"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=sametcn99.env-protector","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sametcn99.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"sametcn99","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2024-09-14T03:32:17.000Z","updated_at":"2024-09-21T18:33:58.000Z","dependencies_parsed_at":"2024-09-14T16:18:17.261Z","dependency_job_id":"ebf403c9-524a-4df3-ad96-976c3c296283","html_url":"https://github.com/sametcn99/env-protector","commit_stats":null,"previous_names":["sametcn99/env-protector"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sametcn99%2Fenv-protector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sametcn99%2Fenv-protector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sametcn99%2Fenv-protector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sametcn99%2Fenv-protector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sametcn99","download_url":"https://codeload.github.com/sametcn99/env-protector/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219857798,"owners_count":16556054,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["environment-variables","privacy-extension","privacy-protection","vscode","vscode-extension","vscode-plugin"],"created_at":"2024-09-24T19:56:47.238Z","updated_at":"2025-10-29T11:31:21.844Z","avatar_url":"https://github.com/sametcn99.png","language":"TypeScript","readme":"# Env Protector\n\n![Made For VSCode](https://img.shields.io/badge/Made%20for-VSCode-1f425f.svg)\n![License](https://img.shields.io/github/license/sametcn99/env-protector.svg)\n![Stars](https://img.shields.io/github/stars/sametcn99/env-protector.svg)\n![Watchers](https://img.shields.io/github/watchers/sametcn99/env-protector.svg)\n![Release](https://img.shields.io/github/release/sametcn99/env-protector.svg)\n![Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/sametcn99.env-protector?label=VS%20Marketplace\u0026logo=visual-studio-code)\n\n![Banner](assets/banner.png)\n\n## 🤔 Why this extension?\n\nMost similar extensions hide environment files only after they are opened, which means sensitive information is briefly visible - even if for a short moment. This approach isn't ideal for streamers or anyone concerned about accidentally exposing sensitive data, especially since the toggle feature in other extensions isn't very user-friendly.\n\nThis extension takes a different approach: it asks you how you want to open the file before it's even opened, and operates according to your choice. This proactive protection ensures that sensitive information is never accidentally exposed during live streams or screen sharing.\n\n## 🚀 Features\n\n- **🔒 Toggle Visibility of Environment Files**: Easily toggle the visibility of environment files in the sidebar. This command modifies your workspace settings by adding `\"**/.env*\": true` to the `files.exclude` section in your `settings.json`.  \n  ![Commands](assets/commands.png)\n- **🛑 Confirmation Prompt Before Opening**: Prevent accidental exposure of sensitive data by receiving a confirmation prompt before opening an `.env` file. This safeguard adds an extra layer of security when handling critical environment variables.  \n  ![Confirmation Dialog](assets/dialog.png)\n- **🤐 Mask Sensitive Data**: Automatically mask sensitive environment variables when viewing `.env` files. Variable values are replaced with asterisks, allowing you to review the structure of the file without compromising the actual data.  \n  ![Masked Variables](assets/masked.png)\n- **➕ Add Environment Value Without Opening**: Insert new environment variables directly from the command palette without needing to open the `.env` file. This feature minimizes exposure risks while making it easy to update your environment.\n  ![Add Environment Value](assets/add.gif)\n- **✍️ Edit Environment Value Without Opening**: Quickly edit an existing environment variable from your enviroment files without exposing their contents in the editor.\n  ![Edit Environment Value](assets/edit.gif)\n- **➖ Remove Environment Value Without Opening**: Easily remove environment variables from your environment files, again without exposing their contents in the editor.\n  ![Remove Environment Value](assets/remove.gif)\n\n## 📦 Installation\n\nYou can install **Env Protector** either from the Visual Studio Code marketplace or manually using the steps below:\n\n### Manual Installation\n\n1. Download the `.vsix` file from the [releases page](https://github.com/sametcn99/env-protector/releases).\n2. Open Visual Studio Code.\n3. Navigate to the **Extensions** view by clicking the Extensions icon in the Activity Bar.\n4. Click the ellipsis (...) in the top right corner of the Extensions view.\n5. Select \"Install from VSIX...\" and choose the downloaded `.vsix` file.\n\n## � Building from Source\n\nIf you want to build **Env Protector** from source, follow these steps:\n\n### Prerequisites\n\n- **Node.js** (version 14 or higher)\n- **npm** (comes with Node.js)\n- **Git**\n\n### Build Steps\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/sametcn99/env-protector.git\n   cd env-protector\n   ```\n\n2. **Install dependencies**:\n\n   ```bash\n   npm install\n   ```\n\n3. **Compile the extension**:\n\n   ```bash\n   npm run compile\n   ```\n\n4. **Package the extension** (optional):\n\n   ```bash\n   npm run vsce\n   ```\n\n   This will create a `.vsix` file that you can install manually.\n\n### Development Mode\n\nFor development and testing purposes, you can run the extension in watch mode:\n\n```bash\nnpm run watch\n```\n\nThis will automatically recompile the extension whenever you make changes to the source code.\n\n#### Running with VS Code Run and Debug\n\nYou can also run and debug the extension directly within VS Code:\n\n1. **Open the project in VS Code**:\n\n   ```bash\n   code .\n   ```\n\n2. **Start the watch task** (optional but recommended):\n   - Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)\n   - Type \"Tasks: Run Task\"\n   - Select \"npm: watch\" to start automatic compilation\n\n3. **Launch the Extension Development Host**:\n   - Press `F5` or go to `Run and Debug` view (`Ctrl+Shift+D`)\n   - Select \"Run Extension\" from the dropdown\n   - Click the play button or press `F5`\n\nThis will open a new VS Code window (Extension Development Host) with your extension loaded. You can test all the extension features in this environment, and any changes you make to the code will be reflected after reloading the window (`Ctrl+R` in the Extension Development Host).\n\n## �👥 Contributing\n\nContributions are highly welcome! If you'd like to help improve **Env Protector**, please follow these steps:\n\n1. Fork the repository to your own GitHub account.\n2. Create a new branch for your feature or bug fix.\n3. Make your changes and test them thoroughly.\n4. Submit a pull request, describing your changes in detail.\n\nTogether, we can make **Env Protector** an even more valuable tool for the community!  \nThank you for your contributions!\n\n## 📄 License\n\nThis project is licensed under the [GPL-3.0 license](LICENSE).\n","funding_links":["https://github.com/sponsors/sametcn99"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsametcn99%2Fenv-protector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsametcn99%2Fenv-protector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsametcn99%2Fenv-protector/lists"}