6 releases

0.1.5 Oct 8, 2024
0.1.4 Sep 19, 2024

#1293 in Programming languages

Download history 174/week @ 2024-09-12 172/week @ 2024-09-19 7/week @ 2024-09-26 148/week @ 2024-10-03 44/week @ 2024-10-10 3/week @ 2024-10-17

354 downloads per month

MIT license

37KB
789 lines

Oxbuild

CI Crates.io Version NPM Version License

An ultra-fast tsc-like compiler built on top of oxc.

🚧 Under Construction

Both Oxbuild and oxc are actively under construction and are not yet suitable for production use. If you find a bug in either project, we would love for you to open an issue on GitHub!

Features

  • Transpile TypeScript, JavaScript, JSX, and TSX
  • Emit .d.ts files for TypeScript projects that use isolatedDeclarations
  • JS Source maps for transpiled code

Installation

You can install oxbuild from npm.

npm install -g oxbuild

Or from crates.io.

# using cargo-binstall (recommended)
cargo binstall oxbuild
# or using cargo
cargo install oxbuild

Or, build it from source

git clone git@github.com:DonIsaac/oxbuild.git
cd oxbuild
cargo build --release --bin oxbuild
cp target/release/oxbuild /usr/local/bin

Usage

Assuming you are in your project's root directory and your source code is all in ./src, you can compile your project to ./dist by running:

oxbuild

If oxbuild is behaving in an unexpected way, please run it with debug logs and create a new issue on GitHub.

RUST_LOG=debug oxbuild

TSConfig Support

Oxbuild will respect rootDir and outDir settings in your tsconfig.json. It will look for a tsconfig.json file next to the nearest package.json file by default. If you want to specfiy a different tsconfig.json file, you can do

oxbuild --tsconfig path/to/tsconfig.json

TypeScript Declarations

To generate .d.ts files, your project must have isolatedDeclarations enabled. After that, .d.ts files will be automatically emitted on each build.

Dependencies

~16–26MB
~399K SLoC