Socket
Book a DemoInstallSign in
Socket

enya

Package Overview
Dependencies
Maintainers
0
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install
Package was removed
Sorry, it seems this package was removed from the registry

enya

1.0.1
unpublished
latest
npmnpm
Version published
Weekly downloads
0
Maintainers
0
Weekly downloads
 
Created
Source

Enya

An ergonomic env parsing library

bun add enya

Quick Start

Enya is an ergonomic env parsing library supercharged by Bun. Designed to be fast and with an extensive support for TypeScript.

Parsing your env from process.env.

import { e } from 'enya';

const env = e
	.env({
		DATABASE_URL: e.url(),
		PORT: e.port().default(() => 8080),
	})
	.parse();

Now we can infer the type of the enviroment easily.

/**
 * type Env = {
 *    DATABASE_URL: URL;
 *    PORT: number;
 * }
 */
type Env = typeof env;

Installing

Enya was created with Bun, so you need to install it.

Install Bun with the command below:

Linux & macOS

curl -fsSL https://bun.sh/install | bash

Windows

powershell -c "irm bun.sh/install.ps1 | iex"

Then you can easily install Enya as a package.

bun add enya
bun add -d @types/bun

Using dotenv or any env var loader

Enya lets you load your environment variables however you want, even though Bun already loads them automatically. For this, you can look at the example below:

import { e } from 'enya';
import { config } from 'dotenv';

/**
 * {
 * 		USER_EMAIL: string;
 * 		PORT: number;
 * }
 */
const env = e
	.env({
		USER_EMAIL: e.email(),
		PORT: e.for({
			production: e.never(),
			development: e.number(),
		}),
	})
	.parse(config());

console.log(env);

Enya API

Enya has a great API for customizing each property of your environment variables which were not shown in the examples above, but you can find them in the documentation.

In a short period Enya will provide more support for customizations and more schemes.

Why not envalid or env-var?

Enya is supercharged by Bun and end-to-end type safety, being 80x faster than env-var and 7x faster than envalid. With an ergonomic and modern API.

FAQs

Package last updated on 19 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.