pyanalyticsgit 0.0.6
Biblioteca PyAnalyticsGit para gerar relatórios Git.
License: MIT License
Keywords: pyAnalyticsGit

<div align="center">
<img src="https://user-images.githubusercontent.com/98030427/236968066-315be92b-eabe-4d76-a5d7-bbaaa8df1e2d.png" width="100px" />
</div>




# 📝 Descrição
O PyAnalyticsGit é um projeto em Python criado por estudantes de Engenharia de Software da Universidade de Brasília - UnB. A biblioteca possibilita que o usuário consiga gerar relatórios automatizados a partir de um commit e com base nos dados do repositórios no GitHub como histórico de commits, nome do commit, branch, milestones e entre outros, gerar um relatório em markdown com gráficos e tabelas.

A biblioteca do PyAnalyticsGit deve ser capaz de analisar o desempenho de um projeto oferecendo no relatório parâmetros como taxa de commit por branch, fluxo de desenvolvimento por sprint, commits por usuário, entre outros.

Com essa ferramenta, é possível obter uma ampla variedade de dados e análises de projetos e repositórios do Git, incluindo gráficos e estatísticas. A biblioteca funciona recebendo os dados da API do GitHub e realizando a análise e tratamento dos dados de forma eficiente. Com essa solução, os usuários podem otimizar seus processos e aprimorar a gestão dos seus projetos do Git.

## :dart: Objetivo
### Qual é o propósito do PyAnalyticsGit?

O PyAnalyticsGit tem como objetivo geral fornecer  uma forma automatizada, eficiente e acessível de gerar relatórios com informações de projetos, progressos e as métricas com dados de repositórios no Github, afim de acompanhar e ter o controle do andamento daquele projeto. Desta forma, os principais objetivos que do PyAnalyticsGit é:

* Extrair informações relevantes de commits, issues e milestones do GitHub.
* Gerar relatórios em formato Markdown para facilitar a leitura e compartilhamento.
* Incluir gráficos e tabelas para apresentar visualmente as informações extraídas.
* Facilitar o acompanhamento do desenvolvimento do projeto e a tomada de decisões.

##

## Fluxo de Instalação e Funcionamento


### Instalação/Introdução
 Inicialmente, é recomendável a utilização de um ambiente virtual, que pode ser
criado através do venv:

Digite em seu terminal:
```
python3 -m venv myenv
```
Pronto, assim sera criado um ambiente virtual chamado "myenv"

Para ativar o ambiente:
```
source myenv/bin/activate
```

### Instalação da biblioteca
Vamos começar a instalar a biblioteca com o seguinte comando:
- Instale o sistema de gerenciamento de bibliotecas python “pip”
- Execute o comando em seu terminal:
```
pip install pyanalyticsgit
```
- Para verificar se a instalação ocorreu com sucesso execute em seu
terminal:
```
pip show pyanalyticsgit
```
### Automação
Após configurado e instalado a biblioteca o usuario poderá configurar a automação. 

O usuário deve executar o arquivo a partir do diretório do Repositório no terminal (o diretório deve possuir o arquivo .git para a correta configuração).

Para verificar se seu diretório é um repositório verifique se tem o arquivo
“.git” execute no terminal o comando: ls -a (pois o .git é uma pasta oculta).

Verificado isso deve importar a classe Automatiza:
```
from pyanalyticsgit.repo.automatiza import Automatiza
```
Após importar deve chamar o método automatiza():
```
Automatizar.automatiza()
```
Este método verifica qual o SO utilizado e
cria o arquivo post-commit para automatizar


Ao executar o repositório estará automatizado e a cada commit será gerado um
relatório em markdown.
Após executar o método de automação não é necessário executar novamente.
O usuário deve apagar o método caso for gerar um relatório Estático.

### Relatório Automatizado

A cada evento de commit o git chama o scripty de monitoramento que executa
a criação do relatório.

O relatório gerado estará em um arquivo docs/relatorio.md

- .env:
  - Deve ser criado um arquivo .env no ambiente de utilização da biblioteca e
definir os valores de ‘user_name’(usuário ou repositório que contém o
repositório que será gerado o relatório) e ‘repo_name’ (repositório desejado)
  - Exemplo no repostirório https://github.com/fga-eps-mds/2023.1-PyAnalyticsGit.git :

- O arquivo ‘.env’ deve estar assim para o exemplo acima:
  ```
  user_name = "fga-eps-mds"
  repo_name = "2023.1-PyAnalyticsGit"
  ```
### Relatório Estático
Gera relatórios de repositórios a partir da função “gerar_relatório” recebendo
como parâmetros os valores de usuários e/ou repositórios existentes do github:

Para criar o relatório deverá ser importado a classe Relatorio:
```
from pyanalyticsgit.repo.relatorio import Relatorio
```
Ao importar o usuário cria uma instância da classe Relatorio e chama o método:

- Exemplo: https://github.com/fga-eps-mds/2023.1-PyAnalyticsGit.git
```
Relatorio().gerar_relatorio(’fga-eps-mds’,’2023.1-PyAnalyticsGit’)
```

Caso os parâmetros não sejam fornecidos, o relatório buscará os valores das
variáveis de ambiente contidas em .env.

##
# 🤝 Colaboradores

| [<img src="https://github.com/gabrie1barbosa.png" width=80><br><sub>Gabriel Barbosa</sub>](https://github.com/gabrie1barbosa) |  [<img src="https://github.com/JeffersonSenaa.png" width=80><br><sub>Jefferson Sena</sub>](https://github.com/JeffersonSenaa) | [<img src="https://github.com/mateus9levy.png" width=80><br><sub>Mateus Levy</sub>](https://github.com/mateus9levy) |  [<img src="https://github.com/PedroHhenriq.png" width=80><br><sub>Pedro Henrique</sub>](https://github.com/PedroHhenriq) |  [<img src="https://github.com/rodfon3301.png" width=80><br><sub>Rodrigo Fonseca</sub>](https://github.com/rodfon3301) |   [<img src="https://github.com/Tiago1604.png" width=80><br><sub>Tiago Albuquerque</sub>](https://github.com/Tiago1604) |
| :---: | :---: | :---: |  :---: | :---: | :---: | 

##

## :ballot_box_with_check: Licença:
O PyAnalyticsGit é licenciado sob o MIT License. [licença](/LICENSE).
##



<div align=>
<img src="https://user-images.githubusercontent.com/98030427/236968066-315be92b-eabe-4d76-a5d7-bbaaa8df1e2d.png" width="200px" />
</div>