web-dev-qa-db-fra.com

UI Electron pour le programme Golang?

Je voudrais créer une interface graphique dans Electron pour une application de bureau écrite en Go (actuellement c'est un outil en ligne de commande).

Quelle est la convention pour communiquer entre les processus Electron et Go?

Est-ce que l'utilisation du binaire Go comme API fonctionnerait? Une sorte de communication websocket?

24
Ashkay

L'interaction d'une application écrite en électron avec son backend est exactement comme un navigateur Web, vous avez donc les mêmes options (Web Api, Web Sockets, Ajax, etc.)

12
felipecamposclarke

Vous pouvez utiliser go-astilectron il vous permet de créer des applications GUI multiplateformes avec GO et HTML/JS/CSS (propulsé par Electron) ( divulgation: I ' m l'auteur )

13
Asticode

Vous pouvez exécuter votre application de ligne de commande à partir de votre application Electron via child_process.spawn et communiquez avec lui via stdin/stdout.

13
Vadim Macagon

Murloc Est un wrapper Electron pour Golang pour le rendre facile pour ce type d'application pour Mac. Ils travaillent sur Windows et recherchent des contributions pour les autres plates-formes.

3
user1212212

De même que Murlock, puis-je oser suggérer Webview bibliothèque. C'est un wrapper mince sur Webkit et MSHTML qui fonctionne sur Windows 7+, MacOS, Linux et OpenBSD.

Il est beaucoup plus petit et plus facile qu'Electron. Les applications résultantes sont également plus petites et moins gourmandes en mémoire.

Vous pouvez consulter https://github.com/zserge/webview/tree/master/examples/todo-go pour un exemple d'application Todo qui se compile en un petit binaire autonome.

2
zserge