Skip to content

Latest commit

 

History

History
86 lines (64 loc) · 3.21 KB

README.md

File metadata and controls

86 lines (64 loc) · 3.21 KB

ark.env - Typesafe Environment Variables
Tests Status Total Downloads Bundle Size Dependency Count Powered By ArkType

Installation

npm
npm install ark.env arktype
pnpm
pnpm add ark.env arktype
Yarn
yarn add ark.env arktype
Bun
bun add ark.env arktype

Quickstart

Tip

Find more examples in the examples directory.

import ark, { host, port } from 'ark.env';

const env = ark.env({
  HOST: host, // valid IP address or localhost
  PORT: port, // valid port number (0-65535)
  NODE_ENV: "'development' | 'production' | 'test'",
});

// Automatically validate and parse process.env
// TypeScript knows the ✨exact✨ types!
console.log(env.HOST);     // (property) HOST: string
console.log(env.PORT);     // (property) PORT: number
console.log(env.NODE_ENV); // (property) NODE_ENV: "development" | "production" | "test"

Features

  • 🔒 Typesafe: Full TypeScript support with inferred types
  • 🚀 Runtime validation: Catch missing or invalid environment variables early
  • 💪 Powered by ArkType: Leverage ArkType's powerful type system
  • 🪶 Lightweight: Only a single dependency (5.6 kB)
  • Fast: Optimized for performance with minimal overhead

Documentation

For detailed documentation and examples, please visit our documentation site.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for more information.

Thanks / Inspiration

Find projects and people who helped or inspired the creation of ark.env in THANKS.md. Thank you 🙏