@polioan/zod-env
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

zod-env

version license

Install

npm

npm i @polioan/zod-env

yarn

yarn add @polioan/zod-env

Usage

Normal

import { defineEnvSchema } from '@polioan/zod-env'
import { z } from 'zod'

const env = defineEnvSchema({
  schema: z.object({ NODE_ENV: z.enum(['production', 'development']) }),
})

const value = env('NODE_ENV') // "production" | "development"
const unknownValue = env('FOO') // string | undefined

In bundler environment

import { defineEnvSchema } from '@polioan/zod-env'
import { z } from 'zod'

const env = defineEnvSchema({
  schema: z.object({ NODE_ENV: z.enum(['production', 'development']) }),
  values: {
    NODE_ENV: process.env.NODE_ENV,
  },
})

const value = env('NODE_ENV') // "production" | "development"
const unknownValue = env('FOO') // string | undefined

With Deno or other "non process.env"

const env = defineEnvSchema({
  schema: z.object({ NODE_ENV: z.enum(['production', 'development']) }),
  envResolver: {
    getFallback() {
      return Deno.env.toObject()
    },
    get(key) {
      return Deno.env.get(key)
    },
  },
})

Readme

Keywords

Package Sidebar

Install

npm i @polioan/zod-env

Weekly Downloads

1

Version

1.0.0

License

MIT

Unpacked Size

5.56 kB

Total Files

6

Last publish

Collaborators

  • polioan