prc b6c02717e6 Upload complete no-internet building environment. преди 1 година
..
dist b6c02717e6 Upload complete no-internet building environment. преди 1 година
node_modules b6c02717e6 Upload complete no-internet building environment. преди 1 година
src b6c02717e6 Upload complete no-internet building environment. преди 1 година
LICENSE b6c02717e6 Upload complete no-internet building environment. преди 1 година
README.md b6c02717e6 Upload complete no-internet building environment. преди 1 година
package.json b6c02717e6 Upload complete no-internet building environment. преди 1 година

README.md

config-file-ts

Just use TypeScript for configuration files. ####

TypeScript is more syntactically flexible than JSON. Comments are allowed. Keys needn't be quoted. Arrays can have trailing commas.

TypeScript allows a little programming in config files. Share variables, use utility functions, etc.

TypeScript types provide free error checking, and free IDE support for getting config files right.

Fast

Parsing TypeScript config files is plenty quick. config-file-ts caches the TypeScript output.

Assuming TypeScript is in your environment, config-file-ts adds about 5kb to your program, or 1.5kb minified.

How to use

$ yarn add config-file-ts

In the config file, export default. my.config.ts:

export default {
  entry: "my stuff" // comments are welcome now
};
````


Feel free to add types and scripting. ```my.config.ts```:

ts import os from "os"; // use installed libraries in the config import { MyConfig } from "./MyProgram";

export default { entry: ${os.userInfo().username}'s stuff // use scripting in the config file } as MyConfig; // typecheck the config file ````

Read the config file in your program. MyProgram.ts:

export interface MyConfig {
  entry?: string;
}

const config = loadTsConfig<MyConfig>("my.config.ts");