먼저 create-react-app 을 이용해서 리액트 사이트를 만든다.

프로젝트가 만들어지면 개발 의존성을 설치한다.

electron, electron-builder 는 electron을 개발하기 위한 라이브러리이다.

concurrentry는 여러개의 커맨드를 동시에 실행할 수 있게 해준다. 

wait-on 은 file, port, http 같은 리소스가 사용가능하게 될 때까지 기다리는 유틸리티이다.

의존성 라이브러리를 설치한다.

NODE_ENV=production 같은 환경 변수는 윈도우 환경에서는 적용되지 않는다. posix에서는 $ENV_VAR 윈도우에서는 %EVN_VAR% 를 사용한다. cross-env는 플랫폼에 의존하지 않고 환경 변수를 하나만 세팅하면 여러개의 플랫폼에 공통으로 적용되도록 해준다.

electron-is-dev 는 개발 및 디버깅시 도움을 주는 라이브러리이다.

public 폴더 아래에 electron.js를 만들고 아래의 내용을 넣어준다.

여기를 참고하자.

package.json에 main 부분과 scripts 부분을 수정한다.

npm run start 로 실행한 화면은 아래와 같다.

실행시에 openDevTools() 코드를 넣어놨기 때문에 디버깅 창이 같이 보인다.

npm run build로 빌드를 해보자.

build 폴더에는 webpack이 빌드한 결과물들이 생기고 dist 폴더에는 display Setup 0.1.0.ext 라는 설치 화일이 생긴다. 더블클릭해서 설치하면 바탕화면에 아이콘이 생기고 이 실행아이콘을 더블 클릭하면 앱이 실행된다.