Skip to content
dedalus-labsPublic

About

A fast build system.

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

27,355 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Bessemer

Bessemer (bsmr) builds packages from your project files and reuses unchanged work. Supported native packages do not need handwritten build rules.

Bessemer is a preview, and its interfaces may change. TypeScript with pnpm is the primary integration. See language support for Rust, Go, and Python preview requirements.

Install

On macOS or Linux:

curl --proto '=https' --tlsv1.2 --fail --location \
  https://github.com/dedalus-labs/bsmr/releases/latest/download/bsmr-installer.sh \
  --output bsmr-installer.sh
sh bsmr-installer.sh

Windows users can download and run bsmr-installer.ps1 from the latest GitHub release. Every release also includes platform archives, SHA-256 checksums, and build provenance attestations.

Build a package

At your repository root:

bsmr init
bsmr build apps/api --show-output

Replace apps/api with your package's directory. BSMR creates the project marker, builds the package and its dependencies, and prints the output path. Run the same build command after an edit to reuse unchanged work.

The quick start covers setup. The TypeScript guide lists the required pnpm and compiler files. The Rust preview uses Cargo manifests and an exact toolchain pin. Custom recipes connect additional steps through their inputs and outputs.

Use the OCI rules to package a built application and its runtime files into a container image. Changing the entrypoint reuses the packed layers. For Dockerfile recipes that copy local files, select the BuildKit adapter. These interfaces are experimental.

Find a command

bsmr --help
bsmr build --help

Use bsmr -h for the shortest command list. Each command's --help explains its options. Run bsmr clean when you need to remove generated files and local state.

Documentation

Read the quick start or the full documentation.

Build the documentation locally:

python -m pip install -r docs/requirements.txt
python -m mkdocs serve -f mkdocs.yml

Development

cargo build --locked --bin bsmr
python3 test.py --ci --git --bsmr=target/debug/bsmr
pnpm install --frozen-lockfile --ignore-scripts
pnpm run ci check

Provenance and license

Bessemer began as an upstream fork and now has its own product interface, native ecosystem adapters, cache policy, release process, and roadmap. See NOTICE for upstream provenance.

Except where an inherited notice states otherwise, Bessemer is licensed under the Apache License 2.0.

About

A fast build system.

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages