lucioerlan / Flag-SecOps-Hub

Gerenciador De Feature Flags com um Toque de DevSecOps.

Home Page:https://featureflag-devsecops-gbtech.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Flag SecOps Hub é um projeto para gestão de Feature Flags, com foco em segurança, performance e escalabilidade. Desenvolvido com práticas modernas e tecnologias de ponta, o projeto visa fornecer uma solução eficiente e confiável para o gerenciamento dinâmico de recursos em aplicações.


🛡️ Visão Geral do Projeto

  • Objetivo: Simplificar a gestão de Feature Flags.
  • Usuários-alvo: Desenvolvedores, gerentes de projeto e equipes de QA em busca de uma gestão eficiente e segura.
  • Estrutura: Composto por Backend e Frontend, integrando-se para fornecer uma solução completa.

🏗️ Arquitetura e Tecnologias

Backend

  • Arquitetura: Clean Architecture e DDD para modularidade e manutenção eficiente.
  • Tecnologias: Node.js, TypeScript, Fastify, MongoDB, Jest, Docker, Swagger, Winston, entre outros.
  • Segurança: Implementações específicas para garantir a proteção dos dados e das operações.

Frontend

  • Arquitetura: Design Atômico para organização eficiente e manutenível dos componentes.
  • Tecnologias: React, Vite, Redux, Formik, Styled Components, i18next, React Testing Library, Cypress, Storybook, entre outros.
  • Usabilidade e Acessibilidade: Foco em uma interface amigável e acessível para todos os usuários.
  • Design Figma: Visualize o design no Figma.

🚀 Como Executar

🐳 Docker Compose

  1. Certifique-se de ter Docker e Docker Compose.
  2. Execute docker-compose up na raiz do projeto.
  3. O frontend vai estar disponivel em http://localhost:3000 e o backend em http://localhost:5000. Isso vai subir tanto o backend quanto o frontend em containers Docker.

🧰 Makefile

Para facilitar a execução de comandos, utilize o arquivo Makefile disponível na raiz do projeto:

  • Para construir as imagens Docker:: make build
  • Para executar o projetoo: make up
  • Para parar os serviços: make down

📚 Documentação

Cada parte do projeto (Backend e Frontend) possui documentação específica detalhando sua configuração, uso e características.

Backend

  • Documentação Interativa Swagger: Acesse em http://localhost:5000/documentation após iniciar o projeto.
  • Docsify: Para uma visão mais detalhada, a documentação completa está disponível em Docsify backend. Execute npm run docs:serve na raiz do backend para iniciar o servidor de documentação Docsify.

Frontend

  • Storybook: Explore componentes e guias no Storybook acessando http://localhost:6006 após executar o comando npm run storybook.
  • Docsify: Para uma visão mais detalhada, a documentação completa está disponível em Docsify frontend. Execute npm run docs:serve na raiz do frontend para iniciar o servidor de documentação Docsify.

🛠️ Comandos Comuns

  • npm install: Instala as dependências do projeto.
  • npm run dev: Inicializa o projeto em modo de desenvolvimento.
  • npm run test: Executa todos os testes do projeto.
  • npm run lint: Aplica linting em todo o projeto.

🧪 Testes

Para executar os testes end-to-end com Cypress, Use npm run test:cypress:open para interface interativa ou npm run test:cypress:run para execução headless.


🌟 CI/CD com GitHub Actions e SonarCloud

O projeto possui integração contínua e entrega contínua (CI/CD) com o GitHub Actions. Os resultados de qualidade de código são analisados pelo SonarCloud, incluindo métricas de bugs, code smells, cobertura de código e muito mais. O CD é realizado na Vercel.


🧑‍💻 Contribuição

Contribuições são bem-vindas para melhorar a documentação, adicionar funcionalidades ou corrigir bugs. Crie um pull request ou abra uma issue para colaborar.


🚧 Melhorias Futuras

Para uma lista detalhada das melhorias futuras planejadas para o projeto, incluindo atualizações técnicas e otimizações, por favor visite o seguinte link: Melhorias Futuras


📃 Licença

O projeto é distribuído sob a Licença MIT. Veja LICENSE para mais informações.

About

Gerenciador De Feature Flags com um Toque de DevSecOps.

https://featureflag-devsecops-gbtech.vercel.app


Languages

Language:TypeScript 97.8%Language:JavaScript 1.2%Language:HTML 0.5%Language:Makefile 0.4%Language:Shell 0.1%