Registry / devops / estrella

estrella

JSON →
library1.4.1jsnpmunverified

Estrella is a versatile and lightweight build tool leveraging the speed of esbuild for TypeScript and JavaScript projects. It distinguishes itself by eschewing traditional configuration files in favor of a user-defined JavaScript or TypeScript build script, providing full programmatic control over the build process. Key features include automatic rebuilds on file changes, parallel project building, and integrated TypeScript diagnostics which can be optionally enabled and customized, allowing remapping of diagnostic severity levels. The current stable version is 1.4.1, with releases occurring periodically to incorporate esbuild updates and introduce new features or fixes. Its minimal dependency footprint (primarily esbuild itself) and single-file design contribute to its fast startup times, aiming to retain esbuild's blazing performance.

npm install estrella
INSTALL
IMPORT
SIG · ESTRELLA
E
estrella
devopsjavascriptv1.4.1
Install
—
Import
—
Disk
—
Pass rate
0/ 6
Env Coverage0 / 6
glibc
18–22
musl
18–22
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18–226 runs
build_error
glibc
node 18–226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

build
✓ import { build } from 'estrella'
✗ const build = require('estrella')
While CommonJS `require` is shown in examples, ESM `import` is the modern approach for modules. Both are supported for the main `build` function.
watch
✓ import { watch } from 'estrella'
✗ build({ watch: true })
The `watch` function API changed in v1.4.0. Direct use of `watch` as a function should follow the updated API; previously, `build({ watch: true })` might have been sufficient for basic watching behavior.
BuildConfig
✓ import type { BuildConfig } from 'estrella'
Import types separately using `import type` for clarity and to avoid runtime overhead.

This quickstart demonstrates how to set up a basic build script using Estrella to compile a TypeScript entry point, bundle it, output it to a specified file, and explicitly enable TypeScript diagnostics.

#!/usr/bin/env node const { build } = require("estrella") // A basic build script compiling a TypeScript entry point // and bundling it to a specified output file. // TypeScript diagnostics are explicitly enabled. build({ entry: "src/main.ts", outfile: "out/foo.js", bundle: true, // Pass any options to esbuild here, e.g., minify, sourcemap, platform. // This also explicitly enables TypeScript diagnostics during the build. tsc: true }) // To run this script: chmod +x build.js && ./build.js -watch
estrella --version
Debug
Known issues
breakingThe API for the `watch` function underwent a breaking change in v1.4.0. Users explicitly calling `watch` directly should review the updated API documentation or examples.
fix
Consult the `estrella.d.ts` API documentation or `examples` directory for the correct `watch` function signature and usage patterns for versions 1.4.0 and later.
affects: >=1.4.0
gotchaChanges in internal handling of `define` entries within `BuildConfig` in v1.4.0 might subtly alter build behavior if relying on specific `define` configurations.
fix
Thoroughly test existing build configurations that use `define` options when upgrading to v1.4.0 or newer. Consult esbuild documentation for current `define` behavior.
affects: >=1.4.0
gotchaBehavior when `run`ning a program after building it might have changed in v1.4.1. This could affect scripts that automate execution post-build.
fix
Review the build script's `run` related logic and test its behavior when upgrading to v1.4.1 or later. Adjust program execution commands or `run` options as necessary.
affects: >=1.4.1
gotchaTypeScript diagnostics are optional and only run if a `tsconfig.json` file is present in the project directory or if `build({ tsc: true })` is explicitly set in the build script. Without these, only esbuild's basic transpilation occurs.
fix
To enable full TypeScript type checking and diagnostics, ensure a `tsconfig.json` is configured correctly, or add `tsc: true` to your `build` configuration object.
affects: >=1.0.0
Errors
Common errors & fixes
Parameter 'ev' implicitly has an 'any' type. TS7006
This TypeScript error indicates that a parameter's type could not be inferred and 'noImplicitAny' is enabled in your `tsconfig.json`.
fix
Estrella allows remapping TS diagnostic severities. Add a `tsrules` entry to your `build` options, e.g., `tsrules: { '7006': 'warn' }`, to treat this specific error as a warning instead of an error, or explicitly type the parameter (e.g., `ev: MouseEvent`).
Error: Cannot find module 'estrella'
The 'estrella' package is not installed or not resolvable from the current working directory.
fix
Run `npm install -D estrella` or `yarn add -D estrella` in your project's root directory. Ensure your build script is run from a location where `node_modules` is accessible.
Upgrade
Version history
1.4.1latest on npm
Audit
Dependencies
esbuildrequiredCore compiler dependency for all build operations.
typescriptoptionalUsed for TypeScript diagnostics when `tsc` is enabled or a `tsconfig.json` is present.
fseventsoptionalOptional dependency for improved file watch tracking on macOS.
Agent activity
8 hits · last 30 days
node
8
Resources
estrella — npm install estrella · libregistry