@yuragi-labs/compiler
v0.3.0
Published
Native build-time font compiler for generating Yuragi text outlines.
Downloads
589
Maintainers
Readme
@yuragi-labs/compiler
Build-time compiler wrapper for Yuragi text outlines.
This package invokes the native Rust compiler through Cargo at runtime.
Consumers must have Rust and Cargo available on PATH. Cargo build artifacts
are written to a deterministic cache directory under the OS temp directory, not
inside the installed package.
API
import { compileOutlines, type FontAxes } from "@yuragi-labs/compiler";
const axes = { wght: 900 } satisfies FontAxes;
const bundle = await compileOutlines({
font: "./fonts/title.otf",
axes,
titles: ["Dashboard", "Settings"],
});The compiler deduplicates title strings before invoking the native compiler. Title discovery and output writing stay in the calling build script so this package is independent of any framework or bundler.
Options
font: font file path.axes: optionalFontAxesvariation axis values for variable fonts.titles: a readonly array of explicit strings to compile.
The output is a TextOutlineBundle from @yuragi-labs/core.
See examples/react-static-vite for a
complete script that writes the outline map to JSON and renders it through
@yuragi-labs/react/static.
Native Compiler
The package ships the Rust source under native/ and runs Cargo against it.
The compiled binary is cached outside the package directory so installed package
contents are not mutated.
