August 3rd, 2024

An epic environment manager to fix local environment variable management

EpicEnv is an environment manager for secure handling of environment variables in collaborative projects, supporting macOS and Linux. It features encryption, user invitations, and personal variable protection to prevent leaks.

Read original articleLink Icon
An epic environment manager to fix local environment variable management

EpicEnv is an environment manager designed to facilitate secure management of environment variables for teams collaborating on projects, preventing sensitive information from being exposed in version control. It currently supports macOS and Linux. To get started, users can install EpicEnv via a simple command and initialize it in their project directory. Environment variables can be added as shared or personal, with personal variables remaining uncommitted to Git. Collaborators can be invited using their GitHub usernames, and the environment can be activated or deactivated with specific commands. Changes should be committed to the Git repository, and variables can be removed as needed.

EpicEnv incorporates several security features, including encryption of environment variables using AES GCM mode, with symmetric keys secured by RSA keys from collaborators. It also protects personal variables from being added to the global set, reducing the risk of accidental leaks. Users are advised to rotate keys if a collaborator is uninvited to maintain security. The tool aims to simplify the management of local environment variables in collaborative settings, allowing developers to work with necessary configurations while safeguarding sensitive information. For further details, users can refer to the EpicEnv GitHub repository.

Related

Show HN: Envelope – A modern environment variable cli tool

Show HN: Envelope – A modern environment variable cli tool

The GitHub repository features "envelope," a Rust tool for handling environment variables via SQLite. Commands include add, check, delete, drop, duplicate, export, edit, init, import, list, and help. Simplifies environment configuration management.

From Dotenv to Dotenvx: Next Generation Config Management

From Dotenv to Dotenvx: Next Generation Config Management

Evolution from dotenv to dotenvx, a configuration tool addressing .env file leaks, multi-environment management, and platform inconsistencies. Offers encryption, uniform commands, and enhanced security. Version 1.0.0 released, promising future utilization.

Show HN: Listen to Mechanical Keyboard Sounds with Every Keystroke – It's Fast

Show HN: Listen to Mechanical Keyboard Sounds with Every Keystroke – It's Fast

KeyEcho on GitHub enhances typing with pleasant sounds, offering minimal resource usage, quick response, and sound customization. Lightweight under 5 MB, it supports Windows, macOS, and Linux. Developers can contribute via the repository by ZacharyL2.

Automate Project Environments with Devbox and Direnv

Automate Project Environments with Devbox and Direnv

The article emphasizes the benefits of isolated project environments and introduces Devbox and Direnv as tools to automate environment management. It explains their features, integration, and simplification of setting up project environments.

Git-credential-manager: Secure, cross-platform Git credential storage

Git-credential-manager: Secure, cross-platform Git credential storage

Git Credential Manager is a secure helper for Git on Windows, macOS, and Linux. It ensures consistent authentication, including multi-factor authentication, for platforms like Azure DevOps, Bitbucket, GitHub, and GitLab. Supports secure storage, multi-factor authentication, and more. Compatible with HTTP(S) remotes. Visit the GitHub repository for details.

Link Icon 3 comments
By @devbent - 9 months
> epicenv set KEY VALUE -e myenv -p

I would have flipped this logic, default is local only and an extra param is needed to make them shared. variables as private should be the default, an extra switch should be needed to make them shared.

Aside from that, seems like a cool project. No Windows support is unfortunate, as I typically try to make my projects work across all 3 major dev platforms.

I'm not sure how this is better or worse than systems that use encrypted .env files, but one obvious disadvantage is for any but the most trivial use cases I end up having per environment configs, and this tools seems like it doesn't have support for multiple environments.

By @jauco - 9 months
See also the recent story on dotenvx whose comments mentioned a bunch of comparable tools and had some interesting discussions.

https://news.ycombinator.com/item?id=40789353