O site de documentação para a linguagem de programação do DART, construído com elevente e hospedado na Firebase.
Congratulamo -nos com contribuições de todos os tipos! Para configurar o site localmente, siga as diretrizes abaixo para a construção do local. Para saber mais sobre como contribuir para este repositório, consulte as diretrizes contribuintes.
Comece procurando um problema que capte seu interesse ou crie um problema com sua alteração proposta. Considere adicionar um comentário para que todos saibam que você está trabalhando nisso e sinta -se à vontade para fazer qualquer pergunta que tiver sobre o mesmo problema.
Para atualizar este site, bifurque o repositório, faça suas alterações e gerar uma solicitação de tração. Para alterações pequenas e contidas (como estilos e correções de digitação), você provavelmente não precisa criar este site. Muitas vezes, você pode fazer alterações usando a interface do usuário do GitHub. Podemos encenar as alterações automaticamente em sua solicitação de tração.
Importante
Se você estiver clonando este repositório localmente, siga as instruções abaixo sobre a clonagem com seu submódulo.
Se sua alteração envolver amostras de código, adicionar/remover páginas ou afetar a navegação, considere criar e testar seu trabalho antes de enviar.
Se você quiser ou precisar criar o site, siga as etapas abaixo.
Para alterações além do texto simples e dos ajustes CSS, recomendamos a execução do site localmente para ativar um ciclo de edição-refresch.
Instale as seguintes ferramentas para construir e desenvolver o site:
A última versão estável do DART é necessária para construir o site e executar suas ferramentas. Este pode ser o dardo incluído no Flutter SDK. Se você não tiver Dart ou precisar atualizar, siga as instruções no Get the Dart SDK.
Se você já está instalado, verifique se está no seu caminho e já a versão estável mais recente:
dart --version
A mais recente liberação estável LTS do Node.js é necessária para criar o site. Se você não tiver node.js ou precisar atualizar, faça o download da versão correspondente do seu computador e siga as instruções do arquivo Node.js Download. Se preferir, você pode usar um gerenciador de versão como o NVM e executar nvm install no diretório raiz do repositório.
Se você já possui o nó instalado, verifique se está disponível no seu caminho e já a versão estável mais recente (atualmente 20.14 ou posterior) :
node --version
Se sua versão estiver desatualizada, siga as instruções de atualização de como você a instalou originalmente.
Observação
Este repositório possui submódulos Git, que afeta como você o clona. A documentação do GitHub tem ajuda geral em repositórios de bifurcação e clonagem.
Se você não é membro da organização do DART, recomendamos que você crie um garfo deste repo sob sua própria conta e envie um PR desse garfo.
Depois de ter um garfo (ou você é um membro da Dart Org), escolha uma das seguintes técnicas de clonagem de submodule:
Clone o repo e seu submódulo ao mesmo tempo usando a opção --recurse-submodules :
git clone --recurse-submodules https://github.com/dart-lang/site-www.git
Se você já clonou o repo sem o seu submódulo, execute este comando da raiz do repositório:
git submodule update --init --recursive
Observação
A qualquer momento durante o desenvolvimento, você pode usar o comando git submodule para atualizar os submódulos:
git pull && git submodule update --init --recursive
Antes de continuar configurando a infraestrutura do site, verifique as versões corretas do DART e do Node.js estão configuradas e disponíveis seguindo as instruções em Get the Pré -requisitos.
Opcional: Após clonar o repositório e seus submódulos, crie uma filial para suas alterações:
git checkout -b <BRANCH_NAME>
A partir do diretório raiz do repositório, busque as dependências de dardo do site.
dart pub get
Instale pnpm usando seu método de instalação preferido. pnpm é um gerenciador de pacotes alternativo e eficiente para pacotes NPM. Se você já possui pnpm , verifique se possui a versão estável mais recente. Recomendamos o uso corepack para instalar e gerenciar versões pnpm , pois é agrupado com a maioria das instalações do nó.
Se você não usou corepack antes, precisará primeiro ativá -lo com corepack enable . Em seguida, para instalar a versão correta pnpm , no diretório raiz do repositório, execute corepack install :
corepack enable
corepack install
Depois de instalar e configurar pnpm , busque as dependências do NPM do site usando pnpm install . É altamente recomendável que você use pnpm , mas você também pode usar npm .
pnpm install
No diretório raiz, execute a ferramenta dash_site para validar sua configuração e aprender sobre os comandos disponíveis.
./dash_site --help
No diretório raiz, sirva o site localmente.
./dash_site serve
Este comando gera e serve o site em uma porta local impressa no seu terminal.
Veja suas alterações no navegador navegando para http: // localhost: 4000.
Observe que a porta pode ser diferente se 4000 forem tomados.
Se você deseja verificar a saída e estrutura HTML gerada e gerada, visualize o diretório _site em um explorador de arquivos ou um IDE.
Faça suas alterações no repositório local.
O site deve reconstruir automaticamente a maioria das alterações, mas se algo não atualizar, saia do processo e execute o comando. As melhorias nessa funcionalidade estão planejadas. Abra um novo problema para rastrear o problema se isso ocorrer.
Compreenda suas alterações na filial e envie seu PR.
Se sua alteração for grande ou você deseja testá -la, considere validar suas alterações.
Dica
Para encontrar comandos adicionais que você pode executar, execute ./dash_site --help no diretório raiz do repositório.
Se você fez alterações no código nos diretórios /examples ou /tool , comprometa seu trabalho e execute o seguinte comando para verificar se está atualizado e corresponde aos padrões do site.
./dash_site check-all
Se este script relatar algum erro ou aviso, resolva esses problemas e execute o comando. Se você tiver algum problema, deixe um comentário sobre seu problema ou solicitação de puxar e tentaremos o nosso melhor para ajudá -lo. Você também pode conversar conosco no canal #hackers-devrel no Flutter Colabribuidores Discord!
Uma construção que falha com o Error: Some code excerpts needed to be updated! significa que um ou mais trechos de código nos arquivos de marcação do site não são idênticos às regiões de código declaradas nos arquivos .dart correspondentes.
Para resolver esse erro, a partir da raiz do diretório site-www , execute ./dash_site refresh-excerpts .
Para saber mais sobre como criar, editar e usar trechos de código, consulte a documentação do pacote de trecho atualizador.
As solicitações de tração enviadas podem ser executadas automaticamente por um mantenedor de site. Se você quiser encenar o site, pode criar uma versão completa e fazer upload para o FireBase.
Se você ainda não possui um projeto de base de fogo,
Navegue até o console do Firebase e crie seu próprio projeto FireBase (por exemplo, dart-dev-staging ).
Volte para o terminal local e verifique se você está conectado.
firebase login
Certifique -se de que seu projeto exista e ative esse projeto:
firebase projects:list
firebase use <your-project>
No diretório raiz do repositório, construa o site:
./dash_site build
Isso constrói o site e copie -o para o seu diretório local _site . Se esse diretório existisse anteriormente, ele será substituído.
Implante no site de hospedagem padrão do seu projeto de Firebase ativado:
firebase deploy --only hosting
Navegue até o seu PR no Github e inclua o link da versão encenada. Considere adicionar uma referência ao compromisso que você encenou, para que os revisores saibam se foram feitas outras alterações.