Skip to content
Open
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
117 changes: 106 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,118 @@
# gitlab-lint Frontend
# gitlab-lint Frontend

![gitlab-lint Frontend](gitlab-lint-frontend.png)

## Dependencies
Interface web para visualizar os resultados coletados pelo projeto `gitlab-lint` (API/collector). Esta aplicação é uma SPA em React que consome uma API (configurada via variável de ambiente).

- nodejs
- yarn
- [gitlab-lint API and collector][gitlab-lint]
## Sumário

### Installing dependencies
- Requisitos
- Como rodar localmente
- Variáveis de ambiente
- Docker
- Desenvolvimento e testes
- Contribuindo
- Licença

```bash
make setup
## Requisitos

- Node.js (LTS recomendado)
- yarn ou npm
- backend `gitlab-lint` (API que fornece os dados)

### Dependências principais

- React 17
- Material-UI v4
- Recharts
- axios, lodash

## Rodando localmente

O projeto fornece Makefile com atalhos, mas você também pode usar os scripts do `package.json` diretamente.

Usando Make (recomendado quando disponível):

```powershell
make setup # instala dependências (npm/yarn conforme Makefile)
make run # inicia a aplicação em modo de desenvolvimento
```

Usando npm / yarn diretamente:

```powershell
# instalar
npm install
# ou
yarn install

# iniciar em modo desenvolvimento
npm start
# ou
yarn start

# rodar testes
npm test
# ou
yarn test

# build de produção
npm run build
# ou
yarn build
```

## Run it
## Variáveis de ambiente

Esta aplicação usa a variável de ambiente REACT_APP_API_URL para apontar para a URL da API do `gitlab-lint`. Você pode exportá-la antes de iniciar a aplicação:

```bash
make run
```powershell
# Windows PowerShell
$env:REACT_APP_API_URL = 'https://seu-backend.example.com'
npm start
```

No código, a configuração é lida em `src/conf.js`:

```javascript
const conf = { gitlabLintApiUrl: process.env.REACT_APP_API_URL }
export default conf
```

## Docker

O repositório inclui `Dockerfile` e `docker-compose.yml` para executar a aplicação em container. Exemplo rápido:

```powershell
# build e subir via docker-compose
docker compose up --build -d
```

Verifique o `docker-compose.yml` para o nome do serviço e portas expostas.

## Desenvolvimento e qualidade

- O projeto já possui integração com `prettier` e `pretty-quick` via `husky` para formatar staged changes no pre-commit.
- Recomenda-se adicionar ESLint e um workflow de CI para rodar lint/test/build em PRs.
- Sugestões futuras: adicionar testes com React Testing Library, code-splitting nas rotas e análise de bundle.

## Contribuindo

1. Fork o projeto
2. Crie uma branch com um nome descritivo: `feature/minha-melhora`
3. Implemente sua mudança e adicione testes quando aplicável
4. Faça commit e push
5. Abra um Pull Request explicando o que mudou e por quê

Por favor siga as convenções de lint/format definidas no projeto.

## Problemas comuns

- Erro ao iniciar devido à falta de `REACT_APP_API_URL`: assegure-se de definir a variável de ambiente apontando para o backend.
- Se o `make` falhar no Windows, rode os comandos npm/yarn diretamente conforme seção acima.

## Licença

BSD 3-Clause — ver o arquivo `LICENSE` neste repositório.

[gitlab-lint]: https://github.com/globocom/gitlab-lint