Skip to content
/ envado Public

A simple, ultra-lightweight, and type-safe environment variable validation library for node.js

License

Notifications You must be signed in to change notification settings

abubalo/envado

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Envado

Envado is a type-safe Node.js library created to streamline the validation and retrieval of environment variables.

Key Features

  • Type-safe environment variable validation
  • Auto-completion and type-checking
  • Dynamic configuration for environment variables
  • Lightweight and easy to integrate

Installation

npm install envado --save-dev

Usage

To use the library, make sure you have your .env file in the project root directory. Simply call the envado function with an object that defines the environment variables that you need to validate and load. For example:

import envado from "envado";

const env = envado({
  API_KEY: { type: "string" },
  PORT: { type: "number" },
  DEBUG_MODE: "boolean",
  TAGS: { type: "array" },
  SERVER_CONFIG: {type: "object"}
});

Setting Default value

You can set the default value for the environment, which will be the fallback value when the value in the .env is undefined. For example:

const env = envado({
  PUBLIC_URL: { type: "string", defaultValue: "https://example.com" },
  PORT: { type: "number", defaultValue: 5000 },
  DEBUG_MODE: { type: "boolean", defaultValue: true },
  TAGS: { type: "array", defaultValue: ["foo", "bar"] },
  DATABASE_CONFIG: { type: "object", defaultValue: {
    host: "localhost",
    port: 5432,
    username: "admin",
    password: "password123",
    databaseName: "myapp"
  } },
});

Envado supports several validation types to ensure that your environment variables have the expected format. Here are examples of how to use each validation type:

Validation Types

The following validation types are supported:

  • string: Validates that the environment variable is a string.
  • number: Validates that the environment variable is a number.
  • boolean: Validates that the environment variable is a boolean.
  • array: Validates that the environment variable is a valid array.
  • object: Validates that the environment variable is a valid object.

License MIT

About

A simple, ultra-lightweight, and type-safe environment variable validation library for node.js

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published