- Objetivo Principal: Criar um portal de notícias online funcional e responsivo.
- Área de atuação: Jornalismo local e regional.
- Benefícios esperados: Centralizar informações da cidade em um único espaço digital, com navegação intuitiva e rápida.
- Público-alvo: Moradores de Rio Pomba, estudantes, comerciantes e comunidade em geral.
- Construir uma aplicação web moderna e responsiva.
- Garantir fácil navegação e leitura das notícias.
- Aplicar práticas de desenvolvimento ágil (Scrum, Git e GitHub).
- Estruturar versionamento organizado com branches e PRs.
- Envolver time multidisciplinar (dev, design, financeiro).
Resultados esperados:
- Plataforma funcional disponível para a comunidade.
- Equipe alinhada em práticas modernas de desenvolvimento.
- Aprendizado coletivo em tecnologias web e metodologias ágeis.
- Product Owner: Marcelo Patricio
- Tech Lead: Karla Ferreira
- Team Lead: Guilherme Bernardino
- Development Lead: Vinícius Reis
- Design Lead: Luan Rodrigues
- Dependências globais:
- Node.js (necessário para rodar React e Vite)
- NPM ou Yarn (vem junto com o Node)
- Git (para clonar e versionar)
- VS Code (opcional, mas recomendado)
- Versões mínimas requeridas:
- Node.js: v22.16.0 ou superior
- NPM/Yarn: A que vier instalada com o Node
- React/Vite: Latest
- Ambiente necessário:
- Sistema operacional (Windows, Linux, MacOS)
- Navegador moderno (Chrome, Firefox, Edge)
# Exemplo de comandos de instalação
git clone https://github.com/nome-empresa/projeto-xyz.git
cd projeto-xyz
npm install
npm i --save @fortawesome/react-fontawesome@latest
npm i --save @fortawesome/fontawesome-svg-core
npm i --save @fortawesome/free-solid-svg-icons
npm i --save @fortawesome/free-regular-svg-icons
npm i --save @fortawesome/free-brands-svg-icons
# Rodar em modo de desenvolvimento
npm run dev
# O projeto estará disponível em:
# http://localhost:5173 (ou a porta que o Vite indicar)
# Rodar em produção
npm run build
# O conteúdo gerado ficará na pasta 'dist/'| Tecnologia | Versão | Descrição |
|---|---|---|
| HTML, CSS, JavaScript | Latest | Tecnologias básicas da web |
| React | Latest | Framework frontend |
| Vite | Latest | Build tool para React |
| Firebase | — | Autenticação e banco de dados |
| Java Spring | Latest | Backend futuro (em avaliação) |
| Figma | — | Ferramenta de Prototipação |
- Formato padronizado:
[tipo] Descrição da alteração [PROJ-XXX] - Objetivo: Garantir histórico claro, rastreável e organizado.
| Tipo | Exemplo de Commit | Descrição |
|---|---|---|
| feat | [feat] Criação da página de login |
Nova funcionalidade adicionada |
| fix | [fix] Correção no layout responsivo do Header |
Correção de bug |
| style | [style] Padronização de espaçamentos no Footer |
Alterações de formatação ou aparência |
| docs | [docs] Atualização do README com instruções de instalação |
Alterações apenas na documentação |
| refactor | [refactor] Reestruturação da lógica de rotas |
Refatoração de código sem alterar comportamento |
| test | [test] Adição de testes unitários para o Header |
Inclusão ou ajuste de testes |
| chore | [chore] Configuração inicial do ESLint e Prettier |
Tarefas de manutenção do projeto |
- Pull Requests obrigatórios
- Revisão pelo Tech Lead antes do merge
- Verifica:
- Seguimento dos padrões de commit
- Qualidade do código
- Documentação necessária
- Testes unitários
- Marcar o tech lead para revisar sempre
- Cada desenvolvedor possui sua própria branch de feature
- Branch
developcomo branch principal de desenvolvimento - Branch
mainprotegida para releases - Pull requests obrigatórios para
develop - Apenas tech lead pode:
- Realizar merges na
main- Lançar novas versões
- Revisar código
- Criar branch a partir da develop
- Implementar feature
- Abrir PR para develop
- Tech Lead revisa e aprova
- Merge realizado somente com aprovação
- Desenvolvedores trabalham em suas branches individuais
- Criam pull requests para a branch
develop - Pull requests devem incluir:
- Descrição do que foi feito
- Descrição de resultado esperado
- Referência ao ticket relacionado
- Screenshots quando aplicável
- Tech lead é responsável por:
- Criar tags de versão
- Gerar documentação de release
- Realizar deploy para produção
Uso de boas práticas como:
- Contraste adequado de cores
- Texto legível
- Uso de
altem imagens - Navegação por teclado
- Testes com ferramentas como WAVE
Boas práticas de código:
- HTML semântico
- CSS modularizado e reaproveitável
- Responsividade e clareza visual
- Componentização no React
- Um arquivo CSS para cada arquivo .jsx
Este projeto utiliza as seguintes cores principais:
| Código Hex | Cor Visual |
|---|---|
#0A0A0A |
|
#38332E |
|
#FFFFFF |
|
#FF4000 |
|
#FDDD0D |
flowchart LR
classDef dev fill:#ffaa00,color:#000,stroke:#ffaa00
classDef review fill:#ff4444,color:#fff,stroke:#ff4444
classDef merge fill:#44ff44,color:#000,stroke:#44ff44
classDef release fill:#4444ff,color:#fff,stroke:#4444ff
A["Desenvolvedor
Cria branch feature"]:::dev --> B["Desenvolvimento
• Código
• Testes
• Documentação"]:::dev
B --> C["Pull Request
para develop"]:::dev
C --> D["Tech Lead
Revisão de Código"]:::review
D --> E{"Aprovação?"}:::review
E -->|"Sim"| F["Merge na develop"]:::merge
E -->|"Não"| G["Solicita
Alterações"]:::review
G --> B
F --> H["Tech Lead
Prepara Release"]:::release
H --> I["Merge na main"]:::release
I --> J["Lançamento
da Versão"]:::release
workspace/portal
│
├── public/ # Arquivos públicos (ícones, imagens, favicon, etc.)
│ ├── images/
│ ├── icons/
│ └── index.html
│
├── src/
│ ├── assets/ # Fontes, imagens e recursos estáticos
│ ├── components/ # Componentes reutilizáveis React
│ ├── pages/ # Páginas da aplicação
│ ├── services/ # Firebases, API, etc.
│ ├── styles/ # Estilos
│ ├── utils/ # Funções utilitárias
│ ├── App.jsx # Componente principal
│ ├── index.js # Ponto de entrada
│ └── routes.jsx # Configuração de rotas
│
├── .gitignore # Arquivo para ignorar arquivos/pastas no Git
└── README.md # Este documento
Configuração Inicial
# Proteger branch main
git branch --set-upstream-to=origin/main main
git remote set-branch origin main --push
# Criar branch develop
git checkout -b develop
git push -u origin developCriando Branches de Feature
# Criar nova branch a partir da develop
git checkout develop
git checkout -b dev_[seu-nome]
# Exemplo:
git checkout develop
git checkout -b dev_anaFluxo de Trabalho Diário
# Iniciar trabalho em nova feature
git checkout -b dev_[seu-nome]
git push -u origin dev_[seu-nome]
# Durante o desenvolvimento
git add .
git commit -m "[tipo] Descrição da alteração [PROJ-XXX]"
git push origin dev_[seu-nome]
# Criar pull request para develop no GitHub/GitLab- Indicadores principais
- Ferramentas utilizadas
- Frequência de medição
- Padrões de design no Figma
- Guia de estilos CSS (BEM, mobile-first)
- Políticas de acessibilidade
- Integração com API de notícias
- Autenticação de usuários (Firebase)
- Painel administrativo para redatores
- Sistema de comentários nas notícias
- Deploy em servidor de produção
-
ESLint: Ajuda a manter o código limpo, identificando erros e padrões de má prática em JavaScript/React.
-
Prettier: Formata automaticamente seu código, mantendo uma padronização visual (espaços, quebras de linha, etc.).
Estas extensões são OBRIGATÓRIAS e essenciais para garantir qualidade, organização e padronização do código.
-
Path Intellisense: Autocompleta automaticamente caminhos de arquivos e diretórios ao importar imagens, componentes, estilos e outros arquivos.
-
Auto Rename Tag: Renomeia automaticamente a tag de fechamento ao alterar a tag de abertura em arquivos HTML ou JSX.
-
Bracket Pair Colorizer 2: Destaca colchetes, chaves e parênteses com cores distintas, facilitando a leitura de blocos de código aninhados.
-
GitLens: Exibe informações avançadas de Git, como autores de linha, histórico de commits, comparações entre branches e muito mais diretamente no editor.
-
Error Lens: Mostra erros e avisos inline, com destaque visual direto nas linhas afetadas, agilizando a identificação de problemas no código.
Estas extensões são recomendadas para melhorar produtividade e experiência no desenvolvimento, mas NÃO são obrigatórias.
-
Responsive Viewer: Simula visualizações de diferentes dispositivos ao mesmo tempo (celular, tablet, desktop), ideal para testar o layout responsivo.
-
Material Icons for GitHub: Adiciona ícones visuais aos repositórios no GitHub, facilitando a navegação e identificação de arquivos e pastas.
-
Retire.js: Detecta bibliotecas JavaScript desatualizadas ou vulneráveis no código de páginas web. Útil para análise e segurança durante o desenvolvimento.
Estas extensões de navegador são OPCIONAIS e visam facilitar testes e análises durante o desenvolvimento.
- Códigos prontos: https://github.com/WebdevShefali/Web-Dev-Resources?tab=readme-ov-file#web-development-resources
Aqui estão alguns sites interativos e didáticos para aprender as principais tecnologias de desenvolvimento web:
-
JavaScript → warriorjs.com
Aprenda JavaScript jogando como um guerreiro que programa para vencer desafios. -
CSS → flukeout.github.io
Pratique seletores CSS com um jogo divertido e visual. -
Git → ohmygit.org
Um jogo educativo para entender como o Git funciona na prática. -
HTML → w3schools.com/html
Comece com a base da web usando tutoriais diretos e exemplos interativos. -
React → react.dev
Documentação oficial com guias passo a passo e playgrounds para aprender React.
Este projeto é licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Para dúvidas ou sugestões, entre em contato com:
- Email: emcomprp@gmail.com
- Site: http://www.emcomp.com.br