confconf-purify
Integrates @confconf/confconf
with purify-ts
.
Install
npm i --save @confconf/confconf-purify purify-ts
Usage
import { confconf, envConfig } from "@confconf/confconf-purify";
import { Codec, number, string, GetType } from "purify-ts/Codec";
const configSchema = Codec.interface({
port: number,
db: Codec.interface({
host: string,
name: string,
}),
});
type Config = GetType<typeof configSchema>;
const config = await confconf({
schema: configSchema,
providers: [
envConfig({
structure: {
port: "PORT",
db: {
host: "DB_HOST",
name: "DB_NAME",
},
},
}),
],
}).loadAndValidate();