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 🙏

© 2026 – Pkg Stats / Ryan Hefner

evk

v0.6.0

Published

A local-first environment variable keeper for developers

Readme

evk

  ███████╗██╗   ██╗██╗  ██╗
  ██╔════╝██║   ██║██║ ██╔╝
  █████╗  ██║   ██║█████╔╝
  ██╔══╝  ╚██╗ ██╔╝██╔═██╗
  ███████╗ ╚████╔╝ ██║  ██╗
  ╚══════╝  ╚═══╝  ╚═╝  ╚═╝

  Environment Variable Keeper

A local-first environment variable keeper for developers.

Features

  • Store environment variables in a local YAML file (~/.evk/store.yaml)
  • Sync variables to shell config files (.zshrc, .bashrc) and .env files
  • Non-destructive updates with managed blocks
  • Conflict detection: automatically comments out existing variables
  • Clean command restores previously commented variables
  • Import variables from existing .env or shell config files
  • Interactive TUI mode for easy management
  • Tag-based organization

Installation

npm install -g evk

Or run directly with npx:

npx evk

Usage

Command Mode

# Add a variable (auto-initializes on first use)
evk add API_KEY sk-xxx --description "OpenAI API Key" --tags prod,api

# List all variables
evk list
evk list --tags prod  # Filter by tags

# Show variable details
evk show API_KEY

# Get variable value (for scripting)
evk get API_KEY

# Remove a variable
evk remove API_KEY

# Sync to files
evk sync -z                 # Sync all variables to ~/.zshrc
evk sync -b                 # Sync to ~/.bashrc
evk sync -e                 # Sync to ./.env
evk sync API_KEY DB_URL -z  # Sync specific keys to ~/.zshrc
evk sync --file ~/custom    # Sync to custom file path

# Import variables from a file
evk import .env                 # Import from .env file
evk import ~/.zshrc -t shell    # Import with tags
evk import config.env --dry-run # Preview without saving
evk import .env --force         # Overwrite existing variables

# Clean managed blocks from files
evk clean -z                # Clean ~/.zshrc
evk clean -b                # Clean ~/.bashrc
evk clean -e                # Clean .env file
evk clean --file ~/custom   # Clean specific file
evk clean --all             # Clean all known targets

# Export variables (for eval)
eval $(evk export)          # Export all variables
eval $(evk export API_KEY)  # Export specific keys
evk export -t prod          # Export by tags

# Purge all evk data
evk purge --force           # Delete ~/.evk directory

Interactive TUI Mode

evk      # Default: starts TUI mode
evk ui   # Explicit TUI command

The TUI provides:

  • List view with variable details
  • Add new variables
  • Edit existing variables
  • Import variables from files
  • Sync to custom paths
  • Clean files with restore preview

Managed Blocks

When syncing to files, evk creates managed blocks:

# === evk Managed Block ===
# Auto-generated by evk. Do not edit manually.
export API_KEY="sk-xxx"
# === End evk Managed Block ===

Variables outside the block that conflict with synced keys are automatically commented out and restored when cleaning.

License

MIT