{"_id":"biome","_rev":"4644636","name":"biome","description":"A simple way to manage environment variables on a per-project basis","dist-tags":{"latest":"0.3.3"},"maintainers":[{"name":"1egoman","email":""}],"time":{"modified":"2026-04-10T20:12:20.000Z","created":"2016-07-10T21:24:03.797Z","0.3.3":"2016-07-12T12:38:28.271Z","0.3.2":"2016-07-12T12:34:44.132Z","0.3.1":"2016-07-12T11:51:27.423Z","0.3.0":"2016-07-12T11:47:18.220Z","0.2.2":"2016-07-10T21:50:44.322Z","0.2.1":"2016-07-10T21:24:03.797Z"},"users":{},"author":{"name":"Ryan Gaus"},"versions":{"0.3.3":{"name":"biome","version":"0.3.3","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","inquirer-promise":"0.0.3","request-promise":"^3.0.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"9e48d1df14893199640c992de2d60cabd84c1687","_id":"biome@0.3.3","_shasum":"71c29633f84a486186bec97675da6f33a925575c","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"71c29633f84a486186bec97675da6f33a925575c","size":149139,"noattachment":false,"key":"/biome/-/biome-0.3.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.3.3.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/biome-0.3.3.tgz_1468327105700_0.8384715539868921"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:26:02.856Z","publish_time":1468327108271,"_cnpm_publish_time":1468327108271},"0.3.2":{"name":"biome","version":"0.3.2","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","inquirer-promise":"0.0.3","request-promise":"^3.0.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"92110c5818e58efe63ee5772336703b68ac7aae6","_id":"biome@0.3.2","_shasum":"d68ae114664cccfabc6fe5489488bcce5f806483","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"d68ae114664cccfabc6fe5489488bcce5f806483","size":149135,"noattachment":false,"key":"/biome/-/biome-0.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.3.2.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/biome-0.3.2.tgz_1468326882389_0.5679413611069322"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:26:01.374Z","publish_time":1468326884132,"_cnpm_publish_time":1468326884132},"0.3.1":{"name":"biome","version":"0.3.1","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","inquirer-promise":"0.0.3","request-promise":"^3.0.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"6d79a5861a6a707d96a96124d08a7770f2f76007","_id":"biome@0.3.1","_shasum":"efefcfa3e1cc7792764cbb14f27f11a63cc4125a","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"efefcfa3e1cc7792764cbb14f27f11a63cc4125a","size":149083,"noattachment":false,"key":"/biome/-/biome-0.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.3.1.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/biome-0.3.1.tgz_1468324285601_0.10754755302332342"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:25:59.871Z","publish_time":1468324287423,"_cnpm_publish_time":1468324287423},"0.3.0":{"name":"biome","version":"0.3.0","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","inquirer-promise":"0.0.3","request-promise":"^3.0.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"c30cedb1af231b127e36c8432fb01844a4b3366b","_id":"biome@0.3.0","_shasum":"909fbd3b3761319d34b2758da765db6bb3046cc3","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"909fbd3b3761319d34b2758da765db6bb3046cc3","size":149081,"noattachment":false,"key":"/biome/-/biome-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.3.0.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/biome-0.3.0.tgz_1468324036344_0.41223252681083977"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:25:58.368Z","publish_time":1468324038220,"_cnpm_publish_time":1468324038220},"0.2.2":{"name":"biome","version":"0.2.2","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"db8e2d6c68b222ca224ffdba1870553d9b8faf44","_id":"biome@0.2.2","_shasum":"3541b720cdf9f2abef124e1b7175031152692107","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"3541b720cdf9f2abef124e1b7175031152692107","size":148478,"noattachment":false,"key":"/biome/-/biome-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.2.2.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/biome-0.2.2.tgz_1468187442803_0.007924448698759079"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:25:56.276Z","publish_time":1468187444322,"_cnpm_publish_time":1468187444322},"0.2.1":{"name":"biome","version":"0.2.1","description":"A simple way to manage environment variables on a per-project basis","main":"src/index.js","scripts":{"test":"mocha test/","coverage":"babel-node node_modules/.bin/babel-istanbul cover _mocha","prepublish":"babel src/ -d dist/"},"bin":{"biome":"./dist/index.js"},"keywords":["env","NODE_ENV","biome","dotenv","envify","environment","variable","environment","env","var","manage","env","cli"],"author":{"name":"Ryan Gaus"},"license":"ISC","dependencies":{"bluebird":"^3.4.1","chalk":"^1.1.3","commander":"^2.9.0","editor":"^1.0.0","fs-promise":"^0.5.0","untildify":"^3.0.2","user-home":"^2.0.0"},"devDependencies":{"babel-cli":"^6.10.1","babel-istanbul":"^0.11.0","babel-preset-es2017":"^1.4.0","babel-register":"^6.9.0","mocha":"^2.5.3","mock-fs":"^3.11.0","sinon":"^1.17.4","sinon-as-promised":"^3.0.1"},"gitHead":"8e1cdeb0bd695021b67074527b6667af0873ee07","_id":"biome@0.2.1","_shasum":"00926edb0bf282ae10fce4975b8534845f1563e0","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.12.0","_npmUser":{"name":"1egoman","email":"rsg1egoman@gmail.com"},"dist":{"shasum":"00926edb0bf282ae10fce4975b8534845f1563e0","size":146009,"noattachment":false,"key":"/biome/-/biome-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/biome/download/biome-0.2.1.tgz"},"maintainers":[{"name":"1egoman","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/biome-0.2.1.tgz_1468185842269_0.14255362516269088"},"directories":{},"_cnpmcore_publish_time":"2021-12-23T07:25:54.594Z","publish_time":1468185843797,"_cnpm_publish_time":1468185843797}},"readme":"![Biome: a small script to manage a user's environment variables](https://raw.githubusercontent.com/1egoman/biome/master/resources/hero.png)\n\n[![CircleCI](https://circleci.com/gh/1egoman/biome.svg?style=svg&circle-token=5cd1a8690f148661881840c868009db16f10370f)](https://circleci.com/gh/1egoman/biome)\n[![npm version](https://img.shields.io/npm/v/biome.svg)](https://npmjs.com/package/biome)\n[![Licence](https://img.shields.io/npm/l/biome.svg)](http://spdx.org/licenses/ISC)\n\nManage environment variables in a sane way. Never push up secrets again!\n- Enforces a clear separation of secrets and code.\n- All secrets are in one configurable place. (by default, `~/.biome`)\n- Associate any number of variables with any number of projects.\n- Easily create complex variable structures that inherit from one-another.\n\n## Installation\n```bash\nnpm install -g biome\n```\n\n## Usage\n```bash\n$ biome --help\n  Usage: biome [options] [command]\n\n  Commands:\n\n    init [project]            Create a new project with the specified name, and save an alias to this folder.\n    add [project]             Add a variable to a project. Specify like NAME=value.\n    use [project]             Open a shell with a project's associated variables included.\n    edit [project]            Open $EDITOR with the project's associated environment variables.\n    vars [options] [project]  Echo all variables.\n\n  Options:\n    -h, --help     output usage information\n    -V, --version  output the version number\n\n  Examples:\n\n  $ biome init project\n  $ biome add project FOO=bar BAZ=\"I'm a teapot\"\n  $ biome use project\n```\n\n## Workflow\nTo set up an environment, first run `biome init project` to set up a new environment called\n`project`. Then, to add new variables to an environment, run `biome add project KEY=value`. To\nperform more complicated configurations, edit the environment directly with `biome edit project`.\n\nOnce you'd like to use the environment, run `biome use project`. A new instance of `$SHELL` will be\nspawned containing all the configured variables, plus a few Biome-specific ones. To view your\ncurrent environment, type `biome`.\n\n## How it works:\nFor each project, biome creates 2 files: a local `Biomefile` and a global `project.json`.\n```\n// Biomefile\n{\n  \"name\": \"project\"\n}\n// project.json\n{\n  \"VARIABLE\": \"value\"\n}\n```\nThe local `Biomefile` can be committed to source control because it just contains a reference to the\nglobal project. The `project.json` is stored in `~/.biome/project.json`, where `project` is replaced\nwith the identifier in the `Biomefile`. This file is where the environment variables themselves are\nactually stored. Since each user can have a separate `project.json` for each system, everyone can\ncustomize their config to suit their needs.\n\nConfiguration\n---\n- `BIOME_LOCAL_NAME`: The name of the file in the project that references an environment. Defaults\n  to `Biomefile`.\n- `BIOME_FOLDER_NAME`: The name of the folder that biome stores all secrets within. Defaults to\n  `~/.biome`.\n\n### Tips and Tricks\n- Want to include other environments into a project? Within the project's environment, add the\n  special key `$include` mapping to an array of envornments. For example, `\"$include\": [\"another\",\n  \"environment\", \"here\"]`.\n- Easily give new users a simple way to enter values. Within the `Biomefile`, define a property\n  called `template`. Each key of `template` should be the variable name, while each value should be\n  its default value. For example:\n```json\n{\n  \"name\": \"my-project\",\n  \"template\": {\n    \"KEY\": \"value\"\n  }\n}\n```\n  Then, when the user runs `biome init`, they'll be prompted for the values specified. Above, they'd\n  be prompted for `KEY`, and given a default choice of \"value\".\n- Don't want to hardcode templates into a project? As an argument to `biome init`, specify a\n  template url after the project name, like `biome init project http://example.com/template.json`.\n\n\n----------\nCreated by [Ryan Gaus](http://rgaus.net)\n","_attachments":{},"license":"ISC"}