@digitalcloud.no/typed-env-toolkit
v0.1.1
Published
Type-safe environment variable loader with runtime validation for Node.js and TypeScript.
Maintainers
Readme
@digitalcloud.no/typed-env-toolkit
Type-safe environment variable loader with runtime validation for Node.js and TypeScript.
Installation
npm install @digitalcloud.no/typed-env-toolkitFeatures
- ✅ Type-safe environment variable loading
- ✅ Runtime validation with custom validators
- ✅ Support for required and optional variables
- ✅ Default values for optional variables
- ✅ JSON parsing support
- ✅ Detailed error messages
Usage
import { defineEnv } from '@digitalcloud.no/typed-env-toolkit';
const env = defineEnv({
NODE_ENV: { required: true },
PORT: {
required: false,
default: '3000',
validate: (val) => !isNaN(Number(val))
},
DATABASE_URL: { required: true },
FEATURES: {
required: false,
parse: (val) => JSON.parse(val)
}
});
console.log(env.PORT); // Type-safe accessAPI
defineEnv(schema)
Defines and validates environment variables based on a schema.
Parameters:
schema: Object mapping variable names to their configurationrequired: boolean - Whether the variable is requireddefault: string - Default value if not providedvalidate: function - Custom validation functionparse: function - Custom parser function
Returns: Typed object with validated environment variables
Throws: EnvError if validation fails
Contributing
Contributions are welcome! This package is part of the npm-packages monorepo.
License
MIT © digitalcloud.no
