스마트 컨트랙트와 dapp을 컴파일하고 배포·테스트·디버깅하기 위한 Ethereum 개발 환경입니다.
foundry-rs/foundry
Ethereum 스마트 컨트랙트 개발을 위한 Rust 기반 툴킷으로, Forge, Cast, Anvil, Chisel을 통해 EVM 체인을 빌드, 테스트하고 상호작용할 수 있습니다.
대체할 수 있는 제품:Hardhat
- 스타
- 10,685
- 포크
- 2,686
- 열린 이슈
- 246
- 마지막 커밋
- 4시간 전
어떤 프로젝트인가요?
Foundry는 Rust로 작성된 Ethereum 애플리케이션 개발 툴킷입니다. 네 가지 도구를 제공합니다. Forge는 Solidity 컨트랙트의 빌드, 테스트, 퍼징, 디버깅, 배포를 담당하고, Cast는 명령줄에서 컨트랙트를 호출하고 트랜잭션을 전송하며 체인 데이터를 조회합니다. Anvil은 실시간 네트워크를 포크할 수 있는 로컬 Ethereum 개발 노드이고, Chisel은 Solidity REPL입니다.
일반적인 작업 흐름은 forge init으로 프로젝트 뼈대를 만든 다음 forge build와 forge test를 실행하는 방식입니다. Anvil은 메인넷을 로컬에서 포크해 실제 온체인 상태를 기준으로 컨트랙트를 테스트할 수 있게 해주며, Cast는 실시간 RPC 엔드포인트에서 잔액, 블록 번호 등의 데이터를 조회합니다. 또한 Solidity 언어 서버도 제공하며, forge lsp로 실행해 VS Code나 LSP를 지원하는 다른 편집기에서 사용할 수 있습니다.
Foundry는 모듈식으로 구성되어 있어 각 도구를 개별적으로 사용하거나 함께 사용할 수 있습니다. Apache-2.0과 MIT 이중 라이선스로 제공됩니다.
핵심 기능
- 01Forge는 Solidity 컨트랙트를 빌드하고 테스트하며 퍼징 및 배포할 수 있습니다.
- 02Cast는 명령줄에서 EVM 체인 및 컨트랙트와 상호작용합니다.
- 03Anvil은 로컬 Ethereum 노드를 실행하며 실시간 네트워크를 포크할 수 있습니다.
- 04Chisel은 빠르게 실험할 수 있는 Solidity REPL을 제공합니다.
- 05forge lsp는 편집기용 Solidity 언어 서버를 제공합니다.
활용 사례
- Solidity 스마트 컨트랙트를 로컬에서 작성하고 단위 테스트하기.
- Anvil로 메인넷 상태를 포크해 컨트랙트를 테스트하기.
- Cast를 사용해 스크립트나 터미널에서 잔액 및 체인 데이터를 조회하기.
- VS Code 또는 LSP를 지원하는 다른 편집기에서 Solidity 편집기 지원을 설정하기.
빠른 시작
- 1
README에 있는 공식 설치 스크립트를 실행합니다
- 2
foundryup으로 툴킷을 설치합니다
foundryup - 3
새 프로젝트를 초기화합니다
forge init counter && cd counter - 4
프로젝트를 빌드한 다음 forge test를 실행합니다
forge build
토픽
자주 묻는 질문
- foundry은(는) 무엇인가요?
- Ethereum 스마트 컨트랙트 개발을 위한 Rust 기반 툴킷으로, Forge, Cast, Anvil, Chisel을 통해 EVM 체인을 빌드, 테스트하고 상호작용할 수 있습니다. Foundry는 Rust로 작성된 Ethereum 애플리케이션 개발 툴킷입니다. 네 가지 도구를 제공합니다. Forge는 Solidity 컨트랙트의 빌드, 테스트, 퍼징, 디버깅, 배포를 담당하고, Cast는 명령줄에서 컨트랙트를 호출하고 트랜잭션을 전송하며 체인 데이터를 조회합니다. Anvil은 실시간 네트워크를 포크할 수 있는 로컬 Ethereum 개발 노드이고, Chisel은 Solidity REPL입니다.
- foundry은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- foundry은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- foundry은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. foundry의 마지막 커밋은 2026년 10월 21일입니다.
- foundry은(는) 어디에 사용할 수 있나요?
- Solidity 스마트 컨트랙트를 로컬에서 작성하고 단위 테스트하기. Anvil로 메인넷 상태를 포크해 컨트랙트를 테스트하기. Cast를 사용해 스크립트나 터미널에서 잔액 및 체인 데이터를 조회하기. VS Code 또는 LSP를 지원하는 다른 편집기에서 Solidity 편집기 지원을 설정하기.
- foundry는 어떻게 설치하나요?
- README에 있는 공식 설치 스크립트를 실행합니다 foundryup으로 툴킷을 설치합니다: foundryup 새 프로젝트를 초기화합니다: forge init counter && cd counter 프로젝트를 빌드한 다음 forge test를 실행합니다: forge build
- foundry은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/foundry-rs/foundry
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Solidity는 Ethereum 플랫폼에서 스마트 컨트랙트를 작성하기 위한 정적 타입의 컨트랙트 지향 프로그래밍 언어입니다.
Sway는 Fuel 블록체인에서 스마트 컨트랙트를 작성하기 위한 Rust 영감의 프로그래밍 언어입니다.
Ethereum 실행 레이어의 Go 구현체로, JSON-RPC와 개발 도구를 제공하며 풀 노드 또는 아카이브 노드로 실행할 수 있습니다.
Ethereum 개발, 스마트 컨트랙트, 네트워크의 기반 기술을 다루는 『Mastering Ethereum』 제2판입니다.
실세계 데이터와 오프체인 연산을 스마트 컨트랙트에 제공하는 탈중앙화 오라클 네트워크를 운영하기 위한 Chainlink 코어 노드와 컨트랙트입니다.