Repolode
indexable-inc

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. 1

    README의 공식 설치 스크립트를 실행하세요

  2. 2

    아무 Rust 프로젝트에서나 cargo run 대신 blaze를 실행하세요

    blaze run

사용 전 알아둘 점

  • macOS(Apple 실리콘)와 Linux에서만 지원됩니다. Windows에서는 모든 빌드가 cargo로 대체됩니다.
  • blaze는 프로젝트에 고정된 툴체인이 아니라 자체 번들 nightly Rust 툴체인을 사용합니다.
  • 속도를 위해 메모리를 더 사용하며, 작은 프로젝트에서도 몇 GB를 사용할 수 있습니다.
  • 아직 초기 단계인 프로젝트이므로 최종 확인에는 cargo check 또는 CI를 계속 사용해야 합니다.

Repolode 주간에 소개됨

포함된 컬렉션

토픽

#rust#cargo#incremental-compilation#jit#compiler#developer-tools#hot-reload#cranelift#live-coding#rust-analyzer

자주 묻는 질문

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 통계는 매일 갱신됩니다.

관련 프로젝트

LLVM을 사용해 수치 연산용 Python 함수를 빠른 머신 코드로 변환하는 NumPy 지원 오픈소스 JIT 컴파일러입니다.

1.1만+3 이번 주1.4천PythonBSD-2-Clause활발히 관리됨업데이트 22시간 전

프로그램이 실행 중에 x86/x64 및 AArch64 명령어를 생성할 수 있도록 지원하는 저지연 머신 코드 생성용 C++ 라이브러리입니다.

개발 도구#jit#machine-code#assembler
4.6천+5 이번 주606C++Zlib활발히 관리됨업데이트 어제