Olá! Estamos muito felizes que você quer contribuir com nosso projeto. Antes de contribuir, por favor tenha certeza de seguir todas as recomendações e submeter.
O desenvolvimento da linguagem egua, assim como a utilização da linguagem, possui uma estrutura que facilita a contribuição, principalmente em termos de biblioteca e métodos internos da linguagem, entretanto essa facilidade só é garantida a partir de algumas práticas e regras que devem ser seguidas, para facilitar a análise de pull requests e garantir a integridade da linguagem e funcionalidade da linguagem em casa commit, já que prezamos pela entrega continua, onde garantimos que o usuário possua a versão mais recente da linguagem para ser utilizada.
-
Windows 10 com WSL ou Linux Ubuntu ou Linux mint >= 18.04
-
Node.js versão LTS >= 12 [link instalação]
-
NPM >= 6
Vale lembrar que ainda não efetuamos testes para garantir o funcionamento do Egua no NPM 7.
-
Execute o comando abaixo para instalar as dependências do projeto
npm install
Possuímos um vídeo que mostra um exemplo de como efetuar a criação de uma biblioteca:
Palestra sobre a criação de bibliotecas na BrasilJS on the reoad Natal/Belém 2020:
A contribuição com o core da linguagem é uma tarefa mais complexa, pois você deverá ter conhecimento em estruturas de interpretadores.
Portanto temos as seguintes recomendações:
Durante e após o seu desenvolvimento para a contribuição recomendamos sempre executar os testes necessários, sendo eles os da sua alteração e os automatizados. Não se preocupe, esses testes serão executados de maneira automática após o seu commit.
Solicitamos também que você adicione um exemplo da funcionalidade que você implementou no arquivo tests/tests.egua
para que os testes unitários sejam executados na sua funcionalidade. Vale lemnbrar que sua contribuição também será revisada manualmente pelo time de desenvolvimento da linguagem.
Os comandos de teste são:
# Execução dos testes unitários
npm run test
Após o desenvolvimento ser concluído, é necessário ter a build web do projeto, que é feita com o comando:
npm run build-web
Sugerimos que você abra o arquivo
index.html
em seu navegador para testar as funcionalidades implementadas por você!
Solicitamos também que você atualize a chave version
do arquivo package.json
, pois só assim a ferramenta de CD será capaz de implementar suas atualizações em produção.
Por fim, seu PR deve ser efetuado na branch desenvolvimento
e solicitamos que você abra uma issue no repositório Docs informando a sua implementação e uma breve explicação para ser adicionado na documentação.
Ao submeter suas alterações para desenvolvimento, a ferramenta de Integração Contínua irá subir o projeto para o ambiente de desenvolvimento que está hospedado no Microsoft Azure: https://blue-meadow-0f18a2410.azurestaticapps.net/
De maneira bem resumida eis o que precisa ser feito:
-
Montar o ambiente.
-
Efetuar as suas alterações.
-
Executar os testes unitários.
-
Executar a build para web do projeto.
-
Testar localmente suas alterações.
-
Atualizar versão no arquivo
package.json
-
Abrir issue no repositório Docs.
Desde já agradecemos de coração pela sua contribuição ao projeto. xD