# 🚀 Guia de Desenvolvimento - Sistema de Controle de Faltas Bem-vindos à equipe! Este projeto une nossas duas turmas em uma simulação real de mercado. Como desenvolvedores, vocês serão responsáveis por construir uma ferramenta robusta utilizando **PHP Orientado a Objetos** e **Bootstrap**. Para que nossa colaboração funcione e o sistema rode perfeitamente no **EasyPanel**, todos devemos seguir este manual. --- ## 🌳 1. Nossas Branches (Onde o código mora) Para manter a organização, o repositório é dividido em níveis de segurança: * **`main` (Produção):** É o código que o cliente vê. **Ninguém** faz commit direto aqui. Apenas o Gerente move o código para cá quando tudo está testado. * **`develop` (Integração):** É onde o trabalho de todos se encontra. Vocês abrirão seus pedidos de união (Pull Requests) para esta branch. * **`feature/seu-nome-tarefa` (Criação):** Toda nova tarefa deve ser feita em uma branch própria criada a partir da `develop`. --- ## 💬 2. Padrão de Commits (Como você comunica seu progresso) Mensagens de commit ruins como "ajuste" ou "testando" não serão aceitas. Usaremos o padrão **Conventional Commits**. Escreva sempre no **imperativo** (ex: "Adiciona", e não "Adicionei"). ### Tipos que vocês mais usarão: | Tipo | Quando usar? | Exemplo | | :--- | :--- | :--- | | **`feat`** | Quando você cria algo novo. | `feat: adiciona o formulário de login` | | **`fix`** | Quando você resolve um erro. | `fix: corrige erro de conexão com o banco` | | **`docs`** | Quando você altera apenas o README ou manuais. | `docs: detalha o funcionamento do banco` | | **`style`** | Alteração visual com Bootstrap (CSS/Layout). | `style: centraliza os botões do dashboard` | | **`refactor`** | Quando você melhora um código PHP sem mudar o que ele faz. | `refactor: simplifica o método de busca` | --- ## 🛠 3. O Fluxo de Trabalho (Passo a Passo) Sempre que você for começar uma tarefa, siga estes passos: 1. **Atualize seu computador:** ```bash git checkout develop git pull origin develop ``` 2. **Crie sua branch de trabalho:** ```bash git checkout -b feature/nome-da-sua-tarefa ``` 3. **Trabalhe no código:** Faça commits pequenos e frequentes seguindo os padrões acima. 4. **Suba para o Gitea:** ```bash git push origin feature/nome-da-sua-tarefa ``` 5. **Peça a Revisão (Pull Request):** No Gitea, abra um Pull Request para a branch `develop`. **Eu (Gerente)** revisarei seu código e, se estiver tudo certo, farei a aprovação. --- ## 📂 4. Arquitetura do Projeto (PHP OOP) Não utilizaremos frameworks, por isso a organização das pastas é vital para o funcionamento do nosso container Docker: * **`/config`**: Arquivos de conexão e variáveis de ambiente. * **`/public`**: É a única pasta visível para o navegador. Contém o `index.php` e arquivos CSS/JS. * **`/src/Controller`**: Onde ficará a lógica que decide o que mostrar. * **`/src/Model`**: Onde as classes PHP conversam com o Banco de Dados (Use PDO!). * **`/src/View`**: Onde o HTML com Bootstrap será escrito. --- ## ⚠️ 5. Regras de Ouro * **Segurança:** Nunca coloque senhas no código. Se precisar de uma credencial, peça ao Gerente para configurar no EasyPanel. * **Qualidade:** Antes de abrir um Pull Request, verifique se não esqueceu nenhum `var_dump` ou comentário desnecessário. * **Colaboração:** Ajude seus colegas. Se o código dele estiver difícil de entender, comente no Pull Request! --- **Bom trabalho a todos! Vamos construir um sistema incrível.**