개요
Remix IDE 는 Ethereum 스마트 컨트랙트의 구현 및 배포를 수행할 수 있는 웹 브라우저 기반 컴파일러 + IDE 입니다.
아래 글을 통해서 Remix IDE 를 사용하는 간단한 방법에 대해서 소개하였었습니다.
본격적으로 Remix IDE 기반의 스마트 컨트랙트를 구현하려고 하니 파일 백업/관리에 대한 고민이 들었습니다. 예를 들어, Remix IDE 에서 열심히 스마트 컨트랙트 코드를 작성했는데, 모르고 웹 브라우저 데이터를 날려버려서 코드가 모두 날아간다던가, 가끔 알 수 없는 오류로 브라우저 또는 컴퓨터가 셧다운 되었을 때 복구가 되지 않는다면? 하는 생각이 들었습니다.
그래서 찾아보니 나의 로컬 환경에 존재하는 파일을 Remix IDE 에서 불러올 수 있도록 연동할 수 있습니다! 따로 잦은 파일 백업을 수행할 수도 있겠지만 로컬 파일과의 연동을 통해 더 편리하게 파일을 관리할 수 있습니다.
Remix IDE 설정
좌측에 있는 File Explorer 메뉴를 들어가서 "WORKSPACES" 좌측에 있는 햄버거 메뉴를 누르면 아래 메뉴들을 확인할 수 있습니다.
여기서 "Connect to Local Filesystem" 을 누르면 아래와 같은 팝업이 나옵니다.
내용을 보면 NPM 패키지에서 다운로드한 패키지의 `remixd` 명령어를 이용하여 로컬 환경의 파일 시스템을 연결할 수 있다고 나옵니다.
"Connect" 버튼을 누르기 이전, 해당 설정을 진행하기 위해 `remixd` 를 실행해야 합니다. 그리고 위에서 이야기한 것처럼 NPM 패키지를 다운로드 받아야 해당 명령어를 이용할 수 있습니다.
터미널에서 `remixd` 명령어를 사용하기 위해 패키지를 설치합니다.
npm install -g @remix-project/remixd
설치가 완료되었으면, 로컬에 조성한 작업 환경을 연결하도록 합니다.
# To see your current path
pwd
# Connect local file system with Remix IDE
remixd -s $YOUR_LOCAL_DIRECTORY --remix-ide https://remix.ethereum.org
본인의 로컬 작업환경에 대한 "절대경로주소"를 해당 `$YOUR_LOCAL_DIRECTORY` 값에 대치하면 됩니다.
명령어를 실행하면, 아래와 같이 Remix IDE 와 연결할 수 있는 서버가 실행됩니다.
위 상태에서 이제 다시 브라우저의 Remix IDE 로 돌아가서 위에서 보았던 팝업의 "Connect" 를 진행합니다.
그러면 `localhost` 이름의 WORKSPACES 가 연결되고, 로컬에서 생성한 파일들이 연결되어 보이게 됩니다.
예시로, 제가 미리 생성해둔, 위의 test.sol 파일을 아래와 같이 수정해 봅니다.
그러면 아래와 같이 로컬 환경의 파일이 변경된 것을 확인할 수 있습니다. (VS Code 로 작업 환경을 Open 하였습니다.)
그럼 반대로 VS Code 와 같은 별도 IDE 에서 파일을 수정하면 어떻게 될까요?
수정을 완료하고 저장을 하자마자, Remix IDE 에서 다음과 같은 팝업이 나왔습니다.
이를 통해, Remix IDE 와 로컬 환경 파일이 실시간적으로 공유되고 있음을 확인할 수 있습니다.
결론적으로, 약간의 조치를 통해 브라우저 기반으로 실행되는 Remix IDE 에 대한 파일 관리를 좀더 능동적으로 할 수 있게 되었습니다.
'개발자 💻 > Blockchain' 카테고리의 다른 글
[MetaMask/Avalanche] 사용자 지정 네트워크 RPC 추가하고 Faucet 이용해보기 (1) | 2025.01.18 |
---|---|
[아발란체] Ava Cloud ? (0) | 2025.01.12 |
[아발란체] Avalanche 블록체인에 대한 호기심 (1) | 2025.01.11 |
[Ethereum] Remix를 이용하여 스마트 컨트랙트 배포하기 (0) | 2023.07.17 |
[Ethereum] 가스(Gas)란 무엇인가? (0) | 2023.07.13 |