Skip to content

Latest commit

 

History

History
95 lines (55 loc) · 4.69 KB

CONTRIBUTING.md

File metadata and controls

95 lines (55 loc) · 4.69 KB

Guia de contribuição da Linguagem Egua

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.

Introdução

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.

Montando ambiente

Requisitos de sistema

Como contribuir

Contribuindo com bibliotecas para a linguagem

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:

Contribuindo com o core da linguagem

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:

Artigos Vídeos
Como é desenvolvida uma linguagem de programação? Tutorial criando uma linguagem de programação em Python
Criando linguagem de programação em Node.js Criando uma linguagem de programação em JavaScript

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/

Resumo

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.

Agradecimentos

Desde já agradecemos de coração pela sua contribuição ao projeto. xD