/ Linux

GopherJS, un outil à tester

Allez, aujourd'hui un peu de code et de développement web avec golang et l'outil que j'ai découvert, GopherJS.

Pré-requis :

  • installer Golang sur votre machine

golypher-1

Dans mon cas je suis sur un MacBook Pro, on prends donc le terminal :

Capture-d-e-cran-2018-01-03-a--10.15.31

On installe GopherJs avec la commande suivante :

go get -u github.com/gopherjs/gopherjs

Autre truc sympa, on peut utiliser comme bac à sable cette interface web pour des tests :

Playground

Avec Gopher on peut bien s'amuser sur des projets web, contrairement àce que l'on peut penser. En effet pas mal de packages permettent d'utiliser le langage Go avec des frameworks comme Bootstrap ou ReactJs.

Golang + ReactJs

745306_a792

myitcv.io/react est un ensemble de liaisons GopherJS pour React, une bibliothèque Javascript pour la construction d'interfaces client interactives.

Pour l'installer dans votre dossier de travail avec Golang :

go get -u myitcv.io/react

GopherJS est un transpiler, qui réécrit le code source Go en code Javascript. La cible principale de GopherJS est Javascript qui sera chargé dans le navigateur (par opposition à NodeJS qui est plus basé sur le serveur ou CLI) et est donc idéalement adapté aux applications web qui ont besoin d'une interface utilisateur interactive.

myitcv.io/react est un package Go qui vous permet de créer des composants et des applications Web React. Les composants sont déclarés dans le code Go qui est ensuite transpilé en utilisant GopherJS dans le code Javascript, qui est chargé dans le navigateur via une page HTML comme toute autre application web.

Hello World est un exemple d'application GopherJS React.

Résultat :

Capture-d-e-cran-2018-01-02-a--18.50.25

Voici comment y parvenir.

Le code - ReactJs

On commence par créer le repertoire dans lequel nous allons créer notre exemple :

mkdir -p $GOPATH/src/example.com/helloworld

cd GOPATH/src/example.com/helloworld

Assurons-nous maintenant d'avoir les paquets pertinents disponibles, et que notre variable d'environnement PATH est correctement définie:

go get -u github.com/gopherjs/gopherjs

go get -u myitcv.io/{react,react/cmd/reactGen}

export PATH="$(dirname $(go list -f '{{.Target}}' myitcv.io/react/cmd/reactGen)):$PATH"

Désormais nous avons accès à l'aide des commandes avec reactGen --help :

Créeons maintenant notre application web GopherJs, toujours au sein du dossier GOPATH/src/example.com

reactGen -init bootstrap

Et enfin :

gopherjs serve

Et à l'adresse suivante, http://localhost:8080/example.com/helloworld on trouvera notre application.

Le code - Bootstrap

GopherJS, un outil à tester
Share this