아래의 설명에서 디렉토리의 경로는 macOS를 기준으로 설명하나, 다른 OS에서도 유사하므로 감안하여 사용하도록 한다.
Scratch는 크게 세개의 파트로 구성되어 있다. 사용자가 직접 Interaction 할 수 있는 GUI를 제공하는 scratch-gui, Scratch의 실행 (Back-end)을 담당하는 scratch-vm, Scratch의 블럭 디자인 및 블럭간의 연결, 관리 등을 담당하는 scratch-blocks이다.
실제론 위 세개의 Repository를 자신의 Repository로 Fork하여 사용하는 것을 권장하고 있다. 위와 같이 공식 Repository를 Clone하여 사용하는 경우, 개발자가 수정한 다음 commit 및 push가 불가능 하므로 (승인없이는), github의 계정을 생성하고 위 Repository를 Fork하여 사용하도록 한다.
scratch-blocks는 사용자가 수정할만한 요소가 없다. 따라서 이 설치 과정에서 scratch-blocks는 건너뛰어도 됨.
이제 https://github.com/llk/scratch-gui, https://github.com/llk/scratch-vm, https://github.com/llk/scratch-blocks를 Fork 하여 자신의 Repository로 가져온다.
이제 Scratch의 소스를 받아온다. 임의의 디렉토리를 생성하고 (여기선 ~/Developer/scratch) 이동한 후 다음과 같이 입력한다.
$ cd scratch-vm
$ npm install
$ npm link
--- 이과정은 무시 ---
$ cd ../scratch-blocks
$ npm install
$ npm link
--- 이과정은 무시 ---
$ cd ../scratch-gui
$ npm install
$ npm link scratch-vm
참고로 npm link 명령은 local (현재 PC)에 저장된 모듈을 사용하겠다는 의미이다. 따라서 scratch-gui에서 scratch-blocks와 scratch-vm은 온라인에서 받아오는게 아닌 우리가 받아서 저장한 것을 사용한다. 실제 위 명령을 실행하고 난 다음의 결과 메시지가 다음과 같이 보인다.