Você pode contribuir com o projeto de diversas formas, implementando uma funcionalidade nova, corrigindo um bug, procurando bugs, revisando pull requests, entre outras. Para se inteirar do projeto, entre no Discord e participe das discussões.
O projeto precisa de ajuda em diversas frentes diferentes como: QA, produto, design e gestão. Entre no servidor do Discord onde há canais específicos para essas atividades.
Se você encontrou um bug, vá nas issues do projeto e reporte-o lá. Verifique antes se já não existe um bug aberto para o problema que quer relatar, usando a busca. O mesmo vale para novas funcionalidades.
O restante deste documento focará nas contribuições de código.
Verifique no projeto do Github quais funcionalidades ainda não foram implementadas e já estão prontas para serem desenvolvidas, elas estarão na coluna "Disponível pra dev". Lá há itens de backend e frontend, então atente-se para qual você gostaria de participar.
Após escolher o item que quer trabalhar, faça um comentário no issue informando que quer contribuir para sua entrega. Uma pessoa que administra o repositório marcará você como a pessoa responsável por aquele issue, e marcará o item como "Em desenvolvimento".
A partir daí você já pode trabalhar no item que escolheu.
Você também pode mandar a contribuição diretamente sem avisar, mas corre o risco de alguém solicitar para trabalhar no item e entregá-lo junto ou antes de você, desperdiçando assim esforços. Somente faça isso se a correção for bem rápida e pontual para evitar o desperdício.
-
Faça um fork do repositório para o seu usuário (uma boa ideia é usar um nome mais descritivo do que
frontend
, comosos-rs-frontend
). -
Clone o repositório (troque
<seuusuario>
na url abaixo pelo seu usuário):git clone https://github.com/<seuusuario>/sos-rs-frontend.git
-
Instale as dependências:
npm install
-
Inicie o servidor:
npm run dev
O app estará disponível em http://localhost:5173.
-
Inicie o servidor de backend. Veja as instruções no seu documento de contribuição.
- Faça suas alterações.
- Rode o lint com
npm run lint
. - Crie um branch com o git
git checkout -b nomedobranch
. - Faça um commit com
git commit
. - Faça um push para o seu repositório com
git push
. - Sincronize seu repositório.
- Abra um pull request.
Não deixe de informar, no seu pull request, qual a issue que está fechando.
Idealmente coloque um comentário no PR que já fechará a issue, como
fixes #xxxx
oucloses #xxxx
(ondexxxx
é o número do issue). Veja como isso funciona. - Acompanhe a revisão do PR. Algumas verificações automáticas serão feitas (o Github Actions rodará o build do Vite, por exemplo). Se uma delas falhar, corrija-a, a revisão humana só começa quando estas checagem estão passando. Após abrir o PR uma pessoa que administra o projeto pode pedir revisões e alterações. Busque respondê-las o mais rápido possível para que o PR possa ser integrado.
Você vai precisar, de tempos em tempos, sincronizar a branch develop
do
seu repositório. Você pode usar o botão Sync fork
do Github
(veja os docs).
Ou você pode fazer manualmente, o que te permite fazer a sincronização sem depender do Github:
-
Antes de mais nada, se estiver no meio de uma contribuição, verifique que já commitou tudo que tinha pra commitar, e então faça checkout do branch
develop
:git checkout develop
-
Adicione o repositório oficial como remoto com nome
upstream
(só necessário na primeira vez):git remote add upstream https://github.com/SOS-RS/frontend.git
-
Faça pull do branch
develop
:git pull upstream develop
-
Se estiver no meio de uma contribuição, faça um rebase no branch
develop
(substitua<seubranch>
pelo nome do seu branch):git checkout <seubranch> git rebase develop
Após o rebase, é importante rodar novamente a aplicação e verificar se tudo continua funcionando.