Global Forest Watch (GFW) est un système dynamique de surveillance et d'alerte des forêts en ligne qui permet aux gens du monde entier de mieux gérer les forêts. Ce référentiel contient l'application Web GFW.

L'application Web GFW est construite avec NextJS, React et Redux.
Cloner le repo:
$ git clone https://github.com/wri/gfw.gitInstallation des dépendances:
$ yarn Copiez le .env.sample sur .env.local et démarrez le serveur:
$ yarn devL'application doit désormais être accessible sur http://0.0.0.0:3000.
Nous suivons un Worklow Gitflow pour le développement et le déploiement.
Nous fusions les demandes de traction dans develop , qui est déployée automatiquement sur les serveurs de mise en scène et de pré-production. Afin de publier des fonctionnalités en production, nous fusions develop en master , déclenchant un déploiement automatique en production.
Nous utilisons Heroku pour déployer nos applications. La production est déployée automatiquement du master à Globalforestwatch.org.
Nous avons deux environnements de mise en scène: la mise en scène et la pré-production. Les deux sont déployés automatiquement à partir develop .
La principale différence est que la mise en scène pointe vers les environnements de mise en scène des API auxquelles nous accédons, la pré-production pointe vers les environnements de production. Ceci est défini par la variable Env NEXT_PUBLIC_FEATURE_ENV .
Nous utilisons également la fonctionnalité des applications d'examen d'Heroku.
Lorsqu'une demande de traction est créée, une application de révision est déployée automatiquement par Heroku avec un NEXT_PUBLIC_FEATURE_ENV de preproduction , et un lien vers l'environnement est ajouté automatiquement à la demande de traction respective.
Nous utilisons les versions GitHub pour enregistrer des modifications de l'application. Pour nous aider à gérer cela, nous utilisons les versions Zeit, un package NPM pour gérer les versions GitHub, les engagements de marquage (major, mineur, patch) et automatiser les journaux de libération sémantique. Pour une explication plus détaillée des changelogs sémantiques, consultez cet article.
Lors du développement, vous pouvez marquer vos validations comme suit: fix some excellent bug (patch) où patch peut être (major/minor/patch/ignore) . Ce titre de validation sera automatiquement regroupé dans la section correcte pour la version. Sinon, vous serez invité pendant le communiqué pour attribuer (ou ignorer) chacun de vos commits. Vous devrez le faire pour chaque engagement, alors n'oubliez pas de vous écraser!
Alors, comment effectuez-vous une version sur GFW?
npx release [type] où le type peut être major , minor , patch ou pre (voir Zeit Docs pour plus de détails). Les couches de carte et les ensembles de données pertinents sont stockés dans le RW-API et le globalforestwatch.org/map utilise le coucher-manager pour les rendre.
Le schéma utilisé pour styliser ces couches, leurs légendes et définir leurs interactions est spécifique à la plate-forme mondiale de surveillance forestière .
Lors de la création ou de la modification des couches / ensembles de données pour GFW, suivez le schéma et la syntaxe décrits dans le fichier de marque de documentation de l'API.
Pour afficher les couches et ensembles de données spécifiques à GFW, utilisez le point de terminaison suivant:
https://api.resourcewatch.org/v1/dataset?app=gfw&includes=layer,vocabulary,Metadata&page ° Size.
Nous utilisons Browserstack pour trouver et résoudre les problèmes de croisement.