2016-04-30 67 views
18

Mi piacerebbe creare una GUI in Electron per un'applicazione desktop scritta in Go (attualmente è uno strumento da riga di comando).UI di elettroni per il programma Golang?

Qual è la convenzione per la comunicazione tra i processi Electron e Go?

Utilizzerebbe semplicemente il binario Go come un'API? Una sorta di comunicazione websocket?

risposta

10

L'interazione di un'applicazione scritta in elettroni con il suo back-end è esattamente come un browser Web, quindi si hanno le stesse opzioni (API Web, Web Sockets, Ajax, ecc)

+2

Ho deciso di utilizzare https://github.com/googollee/go-socket.io per il back-end e il normale socket.io sul frontend. Grazie! – Ashkay

9

È possibile eseguire la riga di comando app dalla tua app Electron tramite child_process.spawn e comunicare con esso tramite stdin/stdout.

3

Murlock È un wrapper Electron per Golang per semplificare questo tipo di app per Mac. Stanno lavorando su Windows e stanno cercando contributi per le altre piattaforme.

+2

Bel progetto, ma non penso che sia un wrapper per Electron. La versione mac utilizza WebKit. La versione di Windows utilizza EdgeHTML. – r03

+0

Murlock non è un wrapper di elettroni. È semplicemente un pacchetto Go per costruire l'interfaccia utente con html e css. Ma sembra un progetto molto interessante! – Pioz

7

È possibile utilizzare go-astilectron che permette di costruire applicazioni GUI cross-platform con GO e HTML/JS/CSS (alimentato da Electron) (divulgazione: Sono l'autore)

1

Analogamente a Murlock, posso osare suggerire la libreria Webview. È un involucro sottile su Webkit e MSHTML che funziona su Windows 7+, MacOS, Linux e OpenBSD.

È molto più piccolo e più semplice dell'Elettrone. Anche le app risultanti sono più piccole e meno affamate di memoria.

Si può dare un'occhiata a https://github.com/zserge/webview/tree/master/examples/todo-go per un esempio di app Todo che compila in un piccolo binario standalone.

Problemi correlati