옵션 1 : electron (일명 원자 셸)
github의 Atom 편집기에서 사용하는 셸입니다. 이것은 node-webkit과 매우 비슷합니다. 스크립트를 먼저 실행하지만 사용자에 대한보기/창을 만들어야합니다. 다른 사소한 차이점이 있지만 그럴 가치가 있습니다.
옵션 2 : NW.js 이전 노드 웹킷
요점은 기본적으로 ... 당신을 당신이 노드의 확장 된 개체 모델을 지원하는 웹 기반 응용 프로그램을 작성하기위한 JS 엔진을 확장 및 모듈이다 package.json의 start.html 모듈과 js 파일을 .nw 확장자를 가진 zip에 패키징하고 nw (.exe)를 사용하여 실행하십시오. Windows, mac 및 Linux 빌드를 사용할 수 있습니다.
옵션 3 : Thrust (Node Adapter)
이것은 정말 발사 응용 프로그램에 대한 IPC 채널과 웹킷/크롬 주위에 바인딩 잃을 수 있습니다. 메시지 채널을 사용하거나 노드에서 더 전통적인 서버 측 응용 프로그램으로 응용 프로그램을 작성하고 창 실행을 제어 할 수 있습니다. 어느 쪽이 좋을지도 모릅니다.
추력은 여러 언어에 대한 바인딩을가집니다. MacGapNode보다 우선해야합니다. 왜냐하면 먼저 크로스 플랫폼 옵션을 선호하기 때문입니다.
4 옵션 : MacGapNode은 (OSX 만 해당)
는 노드 통합 MacGap
제외 (오래된 받고있는 것으로 보인다) 서비스를 ...
나는 '수 .App로 이것을 OSX에 대해 말하십시오.하지만 NodeJS에 백그라운드 서비스 설치를 만들고 데스크톱의 "로컬"사이트에 대한 링크를 만들 수 있습니다. 대부분의 브라우저에는 모든 기능을 표시하지 않는 옵션이 있습니다 (특히 Firefox가 아는 기능 임).
당신의 질문은 특히 OSX에 관한 것이지만 Windows에서는 NSSM을 사용하여 서비스를 실행할 수 있으며 Windows의 NodeJS 기반 서비스에 사용했습니다. 위의 다른 옵션 중 일부는 사용자의 요구에 따라 더 좋습니다.
는 제거 :
-
nexe
- 오래된/관리되지 않는
-
AppJS
- 오래된 웹 사이트 오프라인
-
-
-
DeskShell
DeskShell로 대체
-NW.js에 위임 됨
-
XULRunner
프로젝트가 지연되었으며, 상당히 뒤떨어졌습니다. 이 대답은 여러 질문에 대한 복사
, 이러한 참조는 편의를 업데이트하는 대부분이다.
이 실제로 .APP 패키지해야합니까? 그렇지 않다면 모든 실행 작업을 수행하는 쉘 스크립트를 작성하고 MyApp.command를 호출하여 zip 파일 또는 dmg 또는 기타 소스에있는 노드의 로컬 빌드 및 소스와 함께 패키징하는 것이 더 간단 할 수 있습니다. .app 일 필요가있는 경우 가장 간단한 솔루션은 JS 스크립트를 직접 실행하기 만하면되므로 js 코드를 작성하여 사용자를 위해 브라우저를 시작해야합니다 (그다지 어렵지는 않음). .app 일 필요가 있고 JS를 수정할 수없는 경우 맞춤 .app 래퍼를 만들어야합니다. 그래서, 당신은 무엇을 원합니까? – abarnert
추 신 : py2app와 같은 node.js는 아직 없지만 중간 솔루션을 쉽게 만듭니다. 내가 이해할 수있는 한, http://appjs.org/이 시점에서 가장 유망한 옵션이지만 현재 릴리스는 Mac에서 작동하지 않습니다 ... 그래서 당신은 여전히 작업의 좋은 거래를해야합니다 이론적으로는 "쉬운"방법입니다. – abarnert
PPS 인 경우 https://groups.google.com/group/nodejs/browse_thread/thread/f90b3f1c747d20b3도 참조하십시오 (사용자의 기본 브라우저를 실행하는 대신 WebKit GUI를 앱에 번들하는 방법에 대해 자세히 설명되어 있음). – abarnert