O Global Forest Watch (GFW) é um sistema dinâmico de monitoramento e alerta dinâmico da floresta que capacita as pessoas de todos os lugares para gerenciar melhor as florestas. Este repositório contém o aplicativo da Web GFW.

O aplicativo da Web GFW é criado com o NextJS, React e Redux.
Clone o repo:
$ git clone https://github.com/wri/gfw.gitInstalando dependências:
$ yarn Copie o .env.sample para .env.local e inicie o servidor:
$ yarn devO aplicativo agora deve estar acessível em http://0.0.0.0:3000.
Seguimos um gitflow Worklow para desenvolvimento e implantação.
Nós mesclamos solicitações de tração para develop , que é implantado automaticamente nos servidores de preparação e pré-produção. Para liberar os recursos na produção, nos develop em master , desencadeando uma implantação automática para a produção.
Usamos o Heroku para implantar nossos aplicativos. A produção é implantada automaticamente do master para o globalforestwatch.org.
Temos dois ambientes de estadiamento: estadiamento e pré-produção. Ambos são implantados automaticamente do develop .
A principal diferença é que o estadiamento aponta para os ambientes de estadiamento das APIs que acessamos, a pré-produção aponta para as de produção. Isso é definido pela NEXT_PUBLIC_FEATURE_ENV Env Variable.
Também utilizamos o recurso de aplicativos de revisão da Heroku.
Quando uma solicitação de tração é criada, um aplicativo de revisão é implantado automaticamente pela Heroku com um NEXT_PUBLIC_FEATURE_ENV de preproduction , e um link para o ambiente é adicionado automaticamente à respectiva solicitação de tração.
Estamos usando as versões do GitHub para registrar alterações no aplicativo. Para nos ajudar a gerenciar isso, estamos usando o Zeit Releases, um pacote NPM para lidar com as liberações do GitHub, as cometidas de marcação (major, menor, patch) e automatizando logs de liberação semântica. Para uma explicação mais detalhada dos changelogs semânticos, consulte este post.
Ao desenvolver, você pode marcar suas confirmações da seguinte forma: fix some excellent bug (patch) onde patch pode estar (major/minor/patch/ignore) . Este título de confirmação será automaticamente agrupado na seção correta para a versão. Caso contrário, você será solicitado durante a liberação a atribuir (ou ignorar) cada um de seus compromissos. Você terá que fazer isso para cada compromisso, então não se esqueça de esmagar!
Então, como você faz um lançamento no GFW?
npx release [type] Onde o tipo pode ser major , minor , patch ou pre (consulte o Zeit Docs para obter mais detalhes). As camadas de mapa e os conjuntos de dados relevantes são armazenados no RW-API e no globalforestwatch.org/map utiliza o manager de camada para renderizá-los.
O esquema costumava estilizar essas camadas, suas lendas e definir suas interações são específicas para a plataforma global de relógios Forest .
Ao criar ou modificar camadas/conjuntos de dados para GFW, siga o esquema e a sintaxe descritos no arquivo de marcação de documentação da API.
Para visualizar camadas e conjuntos de dados específicos de GFW, use o seguinte endpoint:
https://api.resourcewatch.org/v1/dataset?app=gfw&includes=layer,vocabulary,metadata&page ..size-200
Usamos o BrowSerstack para encontrar e corrigir problemas de navegador.