generated from garrettmills/template-npm-typescript
Early-phase compiler for Extollo projects
| src | ||
| .eslintignore | ||
| .eslintrc.json | ||
| .gitignore | ||
| LICENSE | ||
| package.json | ||
| pnpm-lock.yaml | ||
| README.md | ||
| tsconfig.json | ||
@extollo/cc
The Extollo project compiler, excc.
The excc command provides additional compile-time support required by the Extollo framework through the application of various pre- and post-compilation phases:
PreparePhase- copies the source files into a separate build directory and writes an augmentedtsconfig.json.ZodifyPhase- provides support for Extollo's form validation by generating Zod schemata from TypeScript interfaces specified by the application configCompilePhase- invokestscon the augmented build directoryNonSourcePhase- copies non-source (read: non-TypeScript) files into the builtlibdir
Usage
usage: excc.js [-h] -c CONFIG -t TSCONFIG [-v]
Early-phase compiler for Extollo projects
optional arguments:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
path to the package.json of the project to compile
-t TSCONFIG, --tsconfig TSCONFIG
path to the tsconfig.json for the project to compile
-v, --verbose output more verbose and debugging output
Configuration
Aside from the normal tsconfig.json, excc reads its configuration from the extollo section of the project's package.json:
extollo.cc.compileDir: string- relative path to the folder to be created and used to compile the projectextollo.cc.zodify: string[]- array of directories whose files should have Zod schemata generated for their interfacesextollo.cc.non-source: string[]- array of non-source compile-paths to be copied into the compiled distribution directory