Cranelift 코드 생성기를 기반으로 하며 WASI와 다양한 언어의 임베딩을 지원하는 독립형 WebAssembly 런타임입니다.
indexable-inc/blaze
실행 중인 프로그램에 변경된 함수만 JIT 컴파일해 적용함으로써 Rust의 증분 빌드 시간을 밀리초 단위로 줄이는 cargo 호환 프런트엔드입니다.
- 스타
- 2,003
- 포크
- 70
- 열린 이슈
- 115
- 마지막 커밋
- 11시간 전
어떤 프로젝트인가요?
blaze는 cargo와 함께 실행되며 프로젝트를 메모리에 컴파일된 상태로 유지합니다. `blaze build`, `blaze run`, `blaze test`처럼 `blaze`를 앞에 붙이면 기존과 같은 명령을 사용할 수 있고, 그 밖의 cargo 명령은 cargo로 그대로 전달됩니다.
파일을 수정하면 blaze는 변경된 함수만 컴파일해 cargo가 이미 빌드한 프로그램에 기록하므로 바이너리 전체를 다시 링크할 필요가 없습니다. 라이브 업데이트를 지원하도록 설정된 프로그램은 계속 실행되는 동안 새 코드를 적용할 수 있습니다. 프로젝트 벤치마크에 따르면 테스트한 ripgrep, helix, bun 등의 프로젝트에서 수정 후 빌드 시간이 cargo보다 몇 배 빠릅니다.
blaze는 Apple silicon을 탑재한 macOS와 Linux를 지원하며, Windows에서는 cargo를 사용해 빌드합니다. 프로젝트에서 고정한 버전과 다를 수 있는 자체 Rust 툴체인을 사용하고 메모리도 눈에 띄게 더 많이 사용하므로, 최종 확인에는 cargo check나 CI를 사용해야 합니다.
핵심 기능
- 01cargo와 같은 명령 앞에 blaze를 붙여 실행합니다.
- 02변경된 함수만 다시 컴파일해 기존 프로그램에 적용합니다.
- 03라이브 업데이트를 지원하는 실행 중인 프로그램에 변경 사항을 반영합니다.
- 04그 밖의 cargo 명령은 변경 없이 그대로 전달합니다.
활용 사례
- 규모가 큰 Rust 프로젝트에서 수정-빌드-실행 반복 작업을 빠르게 처리합니다.
- 라이브 코드 변경을 적용하며 Rust 애플리케이션이나 게임을 빠르게 반복 개발합니다.
- 개발 중 로컬 테스트 실행에 걸리는 대기 시간을 줄입니다.
빠른 시작
- 1
README의 공식 설치 스크립트를 실행하세요
- 2
아무 Rust 프로젝트에서나 cargo run 대신 blaze를 실행하세요
blaze run
사용 전 알아둘 점
- macOS(Apple 실리콘)와 Linux에서만 지원됩니다. Windows에서는 모든 빌드가 cargo로 대체됩니다.
- blaze는 프로젝트에 고정된 툴체인이 아니라 자체 번들 nightly Rust 툴체인을 사용합니다.
- 속도를 위해 메모리를 더 사용하며, 작은 프로젝트에서도 몇 GB를 사용할 수 있습니다.
- 아직 초기 단계인 프로젝트이므로 최종 확인에는 cargo check 또는 CI를 계속 사용해야 합니다.
Repolode 주간에 소개됨
- 제 3호 · SSD에서 전문가를 불러오는 대형 MoE, 밀리초 단위 Rust 재빌드
cargo를 그대로 대체하는 프런트엔드로, 평소 명령 앞에 blaze만 붙이면 됩니다. 바뀐 함수만 JIT 컴파일해 실행 중인 프로그램에 패치하므로 증분 재빌드가 밀리초 단위로 줄어듭니다.
포함된 컬렉션
토픽
자주 묻는 질문
- blaze은(는) 무엇인가요?
- 실행 중인 프로그램에 변경된 함수만 JIT 컴파일해 적용함으로써 Rust의 증분 빌드 시간을 밀리초 단위로 줄이는 cargo 호환 프런트엔드입니다. blaze는 cargo와 함께 실행되며 프로젝트를 메모리에 컴파일된 상태로 유지합니다. `blaze build`, `blaze run`, `blaze test`처럼 `blaze`를 앞에 붙이면 기존과 같은 명령을 사용할 수 있고, 그 밖의 cargo 명령은 cargo로 그대로 전달됩니다.
- blaze은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- blaze은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- blaze은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. blaze의 마지막 커밋은 2026년 11월 5일입니다.
- blaze은(는) 어디에 사용할 수 있나요?
- 규모가 큰 Rust 프로젝트에서 수정-빌드-실행 반복 작업을 빠르게 처리합니다. 라이브 코드 변경을 적용하며 Rust 애플리케이션이나 게임을 빠르게 반복 개발합니다. 개발 중 로컬 테스트 실행에 걸리는 대기 시간을 줄입니다.
- blaze는 어떻게 설치하나요?
- README의 공식 설치 스크립트를 실행하세요 아무 Rust 프로젝트에서나 cargo run 대신 blaze를 실행하세요: blaze run
- blaze은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/indexable-inc/blaze
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Rust의 공식 패키지 관리자. 프로젝트 의존성을 내려받고 Rust 코드를 컴파일합니다.
프로그램이 실행 중에 x86/x64 및 AArch64 명령어를 생성할 수 있도록 지원하는 저지연 머신 코드 생성용 C++ 라이브러리입니다.
CPython 바인딩 없이 Python 코드를 실행하고 WebAssembly와 임베딩을 지원하는 Rust 기반 Python 3 인터프리터입니다.
JIT 컴파일로 성능을 높여 Hack 프로그램을 실행하는 가상 머신입니다.