@playform/build - v0.1.9

🌀 Build —

Build is a powerful tool that compiles all your TypeScript files into JavaScript, leveraging the speed of ESBuild and the type-checking capabilities of the TypeScript compiler.

  • Fast compilation using ESBuild
  • TypeScript support with type-checking
  • Watch mode for development
  • Customizable ESBuild configuration
  • Supports both CommonJS and ES modules

Install the package as a development dependency:

npm install -D -E @playform/build

Run the build tool from the command line:

npx @playform/build 'Source/**/*.ts'
Usage: Build [options] <File...>

Arguments:
File 📝 File patterns to build

Options:
-V, --version Output the version number
-ES, --ESBuild <File> 📜 Custom `ESBuild` configuration file
-TS, --TypeScript <File> 📜 Custom `TypeScript` configuration file (default: "tsconfig.json")
-W, --Watch 👁️ Watch mode: rebuild on file changes
-h, --help Display help information

Add Build to your package.json scripts:

{
"scripts": {
"Build": "Build 'Source/**/*.ts'",
"Run": "Build 'Source/**/*.ts' --Watch",
"prepublishOnly": "Build 'Source/**/*.ts'"
}
}

Create a custom ESBuild configuration file (e.g., ESBuild.ts):

export default {
minify: true,
sourcemap: true,
// Add other esbuild options here
};

Use the custom configuration:

npx @playform/build 'Source/**/*.ts' --ESBuild ESBuild.ts

See an example of a configuration file in ESBuild.ts

Create a tsconfig.json file in your project root:

{
"compilerOptions": {
"outDir": "Target",
"rootDir": "Source",
"strict": true
},
"extends": "@playform/build/tsconfig",
"include": ["Source"]
}

For JavaScript projects using JSDoc comments, create a jsconfig.json:

{
"compilerOptions": {
"outDir": "Target",
"rootDir": "Source",
"checkJs": true
},
"extends": "@playform/build/jsconfig",
"include": ["Source"]
}

Contributions are welcome! Please see CONTRIBUTING.md for guidelines and feel free to submit a Pull Request.

See CHANGELOG.md for a history of changes to this component.