Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Código de Conduta

## Nosso Compromisso

No interesse de promover um ambiente aberto e acolhedor, nós, como colaboradores e mantenedores, prometemos tornar a participação em nosso projeto e em nossa comunidade uma experiência livre de assédio para todos, independentemente de idade, tamanho corporal, deficiência, etnia, características sexuais, identidade e expressão de gênero, nível de experiência, educação, status socioeconômico, nacionalidade, aparência pessoal, raça, religião ou identidade e orientação sexual.

## Nossos Padrões

Exemplos de comportamento que contribuem para um ambiente positivo para nossa comunidade incluem:

* Demonstrar empatia e gentileza para com outras pessoas
* Ser respeitoso com opiniões, pontos de vista e experiências diferentes
* Dar e aceitar graciosamente feedback construtivo
* Aceitar responsabilidade e pedir desculpas aos afetados por nossos erros e aprender com a experiência
* Focar no que é melhor não apenas para nós como indivíduos, mas para a comunidade em geral

Exemplos de comportamento inaceitável incluem:

* O uso de linguagem ou imagens sexualizadas e atenção ou avanços sexuais
* Comentários trolls, insultuosos ou depreciativos e ataques pessoais ou políticos
* Assédio público ou privado
* Publicar informações privadas de outras pessoas, como um endereço físico ou de e-mail, sem sua permissão explícita
* Outra conduta que poderia ser razoavelmente considerada inapropriada em um ambiente profissional

## Nossas Responsabilidades

Os mantenedores do projeto são responsáveis por esclarecer e aplicar nossos padrões de comportamento aceitável e tomarão medidas corretivas apropriadas e justas em resposta a qualquer comportamento que considerem inapropriado, ameaçador, ofensivo ou prejudicial.

Os mantenedores do projeto têm o direito e a responsabilidade de remover, editar ou rejeitar comentários, confirmações, códigos, edições de wiki, problemas e outras contribuições que não estejam alinhadas a este Código de Conduta, e irão comunicar os motivos das decisões de moderação quando apropriado.

## Escopo

Este Código de Conduta se aplica a todos os espaços da comunidade e também se aplica quando um indivíduo está representando oficialmente a comunidade em espaços públicos. Exemplos de representação da nossa comunidade incluem usar um endereço de e-mail oficial, postar por meio de uma conta oficial de mídia social ou atuar como um representante nomeado em um evento online ou offline.

## Aplicação

Instâncias de comportamento abusivo, assediador ou inaceitável podem ser relatadas aos líderes da comunidade Pupunha Code pelo [Discord da comunidade](https://discord.gg/RSbvKPha8R). Todas as reclamações serão revisadas e investigadas prontamente e de forma justa.

Todos os líderes da comunidade são obrigados a respeitar a privacidade e a segurança do relator de qualquer incidente.

## Diretrizes de Execução

Os líderes comunitários seguirão estas Diretrizes de impacto comunitário para determinar as consequências de qualquer ação que considerem uma violação deste Código de Conduta:

### 1. Correção

**Impacto comunitário**: Uso de linguagem inapropriada ou outro comportamento considerado não profissional ou indesejável na comunidade.

**Consequência**: Um aviso privado e por escrito dos líderes comunitários, fornecendo clareza sobre a natureza da violação e uma explicação do motivo pelo qual o comportamento foi inapropriado. Um pedido público de desculpas pode ser solicitado.

### 2. Aviso

**Impacto comunitário**: Uma violação por meio de um único incidente ou série de ações.

**Consequência**: Um aviso com consequências para comportamento contínuo. Nenhuma interação com as pessoas envolvidas, incluindo interação não solicitada com aqueles que aplicam o Código de Conduta, por um período de tempo especificado. Isso inclui evitar interações em espaços comunitários, bem como canais externos como mídia social. A violação destes termos pode levar a um banimento temporário ou permanente.

### 3. Banimento Temporário

**Impacto na comunidade**: Uma violação séria dos padrões da comunidade, incluindo comportamento inapropriado sustentado.

**Consequência**: Um banimento temporário de qualquer tipo de interação ou comunicação pública com a comunidade por um período de tempo especificado. Nenhuma interação pública ou privada com as pessoas envolvidas, incluindo interação não solicitada com aqueles que aplicam o Código de Conduta, é permitida durante este período. A violação destes termos pode levar a um banimento permanente.

### 4. Banimento Permanente

**Impacto na comunidade**: Demonstrar um padrão de violação dos padrões da comunidade, incluindo comportamento inapropriado sustentado, assédio a um indivíduo ou agressão ou menosprezo a classes de indivíduos.

**Consequência**: Um banimento permanente de qualquer tipo de interação pública dentro da comunidade.

## Atribuição

Este Código de Conduta é adaptado do [Contributor Covenant](https://contributor-covenant.org/), versão [2.0](https://www.contributor-covenant.org/version/2/0/code-of-conduct/code_of_conduct.md).
52 changes: 44 additions & 8 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,36 @@
# Como contribuir com o BeatWave

Obrigado por querer contribuir! O BeatWave é um projeto open source da comunidade Pupunha Code e toda ajuda é bem-vinda.

## Precisa de ajuda?

Se tiver qualquer dúvida sobre o projeto, como configurar o ambiente, entender a arquitetura ou escolher uma issue para trabalhar, chama a gente no **[Discord do Pupunha Code](https://discord.gg/RSbvKPha8R)**. A comunidade está lá pra ajudar!

## Primeiros passos

1. Faça um fork do repositório
2. Clone o seu fork localmente
3. Configure o ambiente seguindo o [README](README.md)
4. Crie uma branch a partir da `main` (`git checkout -b minha-feature`)
5. Faça suas alterações
6. Rode `pnpm lint`, `pnpm test` e `pnpm build` para validar
7. Faça commit das suas alterações
8. Abra um Pull Request para a branch `main`
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Vamos ter uma branch staging


## Escolhendo o que fazer

Confira as [issues abertas](https://github.com/pupunha-code/beatwave/issues) para encontrar algo que te interesse. Issues marcadas com `good first issue` são ótimas para quem está começando.

Se quiser trabalhar em algo que ainda não tem issue, abra uma issue primeiro para discutir a ideia com a comunidade.

## Objetivo

Contribuições devem melhorar o produto de forma clara, mantendo consistência técnica e visual.

## Antes de começar

1. Leia a documentação técnica relevante.
2. Verifique as ADRs ativas do projeto.
1. Leia a documentação técnica relevante em [`docs/`](docs/).
2. Verifique as [ADRs ativas](docs/technical-context/briefing/adrs-summary.md) do projeto.
3. Entenda se a mudança resolve um problema real de produto, UX ou manutenção.

## Princípios de contribuição
Expand All @@ -19,27 +42,40 @@ Contribuições devem melhorar o produto de forma clara, mantendo consistência

## Frontend

1. Preserve a linguagem visual neobrutalista light first do projeto.
1. Preserve a linguagem visual neobrutalista do projeto.
2. Use tokens CSS existentes em vez de cores arbitrárias.
3. Evite `useEffect` quando o problema puder ser resolvido com render derivado, eventos ou TanStack Query.
4. Bordas sempre quadradas — nunca use `rounded-*`.
5. Consulte o [design system](docs/design.md) para referência visual.

## Backend

1. Services concentram a regra de negócio.
2. Controllers apenas recebem entrada e delegam.
3. Toda entrada HTTP deve ser validada por DTO.
3. Toda entrada HTTP deve ser validada por DTO com class-validator.
4. O acesso ao banco deve seguir a infraestrutura baseada em Drizzle.
5. Operações compostas devem usar transação.

## Validação recomendada

1. Rode lint.
2. Rode testes.
3. Rode build.
4. Revise impacto em rotas públicas e fluxos de autenticação.
Antes de abrir um PR, rode:

```bash
pnpm lint
pnpm test
pnpm build
```

E revise o impacto em rotas públicas e fluxos de autenticação.

## Escopo de boas contribuições

1. Correções de bugs reais.
2. Melhorias de UX consistentes com o projeto.
3. Refatorações que reduzam fragilidade sem aumentar complexidade.
4. Melhorias de tipagem, validação e robustez operacional.
5. Novas features descritas em issues abertas.

## Código de conduta

Este projeto segue um [Código de Conduta](CODE_OF_CONDUCT.md). Ao participar, você concorda em respeitar suas diretrizes.
Loading