matthewmueller / envobj

Tiny environment variable helper, that I'll use in all my apps.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Envobj

NPM version NPM downloads Build status Test coverage

Tiny environment variable helper.

Ensures that all the required variables are present. Throws on invalid and missing values.

Install

npm install envobj

Usage

const { envobj, string, number, boolean } = require("envobj");

const env = envobj(
  {
    DATABASE_URL: string,
    PORT: number,
    USE_PAPERTRAIL: boolean
  },
  process.env,
  {
    PORT: "8000" // Requires a number, set `8000` if `PORT` is missing.
  }
);

Built-in validators: string, number, boolean and integer.

.env

Use with localenv to populate process.env automatically in development from .env and .env.local.

import { envobj, number } from "envobj";

import "localenv";

export const env = envobj(
  {
    PORT: number
  },
  process.env
);

Tip: Check in .env and exclude .env.local so teammates can get started quickly.

License

MIT

About

Tiny environment variable helper, that I'll use in all my apps.


Languages

Language:TypeScript 94.6%Language:JavaScript 5.4%