npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@makerx/envolver

v1.0.2

Published

Envolver is a CLI (Command Line Interface) tool that streamlines the management of environment variables in your local .env file. Developed in TypeScript, it simplifies the task of handling frequently changing environment variables, especially in projects

Downloads

22

Readme

Envolver

Envolver is a CLI (Command Line Interface) tool that streamlines the management of environment variables in your local .env file. Developed in TypeScript, it simplifies the task of handling frequently changing environment variables, especially in projects with multiple contributors. For a more detailed explanation of its uses and some real-life scenarios where Envolver shines, check out our blog post.

Environment Variables

Environment variables are key-value pairs typically stored in a .env file. They are used to store sensitive information like API keys and passwords separate from the main codebase. These variables often change, especially in projects with multiple contributors, which can make them difficult to keep updated. Envolver helps manage these changes effectively.

Check Variables

The check command compares your local .env file to the latest changes in the code repository.

envolver check <filePath> -o <output>

Options

| Option | Description | Default | | ----------------------- | ----------------------------------------------------- | --------- | | <filePath> | The path to your .env file. Required argument. | N/A | | -o, --output <output> | The output method. Can be either 'json' or 'console'. | 'console' |

Update Variables

The update command generates a vars.json file that summarizes your current environment variables. This file can be included in the code repository or added to your .gitignore file if it contains sensitive information.

envolver update <filePath>

Envolver also organizes the variables into sections for easier management.

Automating Updates

You can configure Envolver to run automatically as part of a GitHub Actions workflow. This ensures your environment variables are always synchronized with the latest changes in the code repository.

name: Update Environment Variables

on:
  push:
    branches: [prod]

jobs:
  build:
    runs-on: ubuntu-22.04
    steps:
      - name: Checkout Repo Code
        uses: actions/checkout@v3

      - name: Update Variables
        run: npx envolver update .env.sample

      - name: Commit to repo
        uses: actions/github-script@v6
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }}
          script: |
            github.rest.git.createCommit({
              owner: context.repo.owner,
              repo: context.repo.repo,
              message: "Updated environment variables",
              tree: env.object_tree,
              parents: [env.parent]
            });