Skip to content

Commit

Permalink
Merge pull request #21 from Rickecr/update_docs
Browse files Browse the repository at this point in the history
Atualizações na documentação e melhorias para novos desenvolvedores
  • Loading branch information
richecr authored Jun 21, 2020
2 parents 5d69338 + 5e35ee0 commit e9445b1
Show file tree
Hide file tree
Showing 20 changed files with 908 additions and 563 deletions.
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/discuss-o.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: DISCUSSÃO
about: Inicia uma discussão sobre um determinado assunto.
title: Discussão
labels: question
assignees: ""
---

**Descrição da discussão:**

<!--Aqui você descreve o assunto que irá ser discutido nessa issue. -->

**Necessidade:**

<!--Aqui você pode explicar porquê essa discussão é necessária. -->

**Seu ponto de vista:**

<!-- Aqui você pode dar seu ponto de vista e mostrar os pontos que você considerou importantes para a sua decisão. -->
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: FEATURE
about: Sugira uma ideia para esse projeto
title: Feature
labels: enhancement
assignees: ""
---

**Descrição da feature:**

<!-- Aqui você descreve o que irá mudar com sua feature. -->

**Necessidade:**

<!-- Aqui você descreve o porquê de sua feature é necessária. -->

**Implementação:**

<!-- Aqui você pode dar ideias de implementações para sua feature. -->
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE/reporte-o-bug.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: BUG
about: Crie um relatório para nos ajudar
title: Bug
labels: bug
assignees: ""
---

**Descrição do bug**

<!-- Uma descrição clara e concisa do que é o bug. -->

**Reproduzir o bug**
Etapas para reproduzir o bug:

1.
2.
3.

**Comportamento esperado**

<!-- Uma descrição clara e concisa do que você acha que deveria acontecer. -->
24 changes: 24 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: PR
about: Abrir uma Pull Request
title: PR
labels: enhancement
assignees: ""
---

#Numero_da_issue

**Descrição do bug/feature:**

<!-- Aqui você descreve sua feature ou bug de sua Pull Request. -->

**Solução**

<!-- Aqui você descreve qual sua solução e como foi a implementação. -->

**Coisas a serem feitas**

<!-- Aqui você diz o que deve ser feito nas próximas Pull Requests. -->

<!-- APAGAR O COMENTÁRIOS AO TERMINAR DE PREENCHER.
PODE CLICAR EM PREVIEW PARA VER COMO ESTA FICANDO. -->
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ celerybeat-schedule
*.sage.py

# Environments
.env/
.env
.venv
env/
Expand Down
153 changes: 153 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
# Contributing

> Pode contribuir a vontade, você será sempre bem-vindo(a). Mas temos algumas regras para serem seguidas para que todos sejam bem recebidos por todos e que todos possam contribuir de maneira feliz :smiley:.
## Adicionar/Atualizar funcionalidades

Você olhou a aplicação e pensou em alguma funcionalidade que deveria ser adicionada no projeto ? :open_mouth:

**_Então, você tem dois passos para seguir:_**

- [Abrir uma issue detalhando sua ideia](#criando-uma-issue)
- [Você mesmo implementar a funcionalidade](#contribuir-com-implementação)

## Criando uma issue

Na página do [projeto](https://github.com/Rickecr/PyElit), você pode clicar no botão `Issues` e na página irá aparecer um botão `new issue`, então é só selecionar e seguir os seguintes passos:

- Selecione o tipo da sua issue: `Bug ou Feature`.
- Dê um bom nome a sua issue.
- Detalhe bem sobre qual objetivo da issue.
- Imagens caso possível.
- Selecione labels para sua issue.
- Por fim, clique em `Submit new issue`.

## Clonar o repositório

Na página inicial do [repositório](https://github.com/Rickecr/PyElit) tem um botão `Fork`. Ao clicar é só esperar concluir o fork. E então ele irá criar o repositório na sua conta. E agora é só clonar em sua máquina, assim:

```sh
git clone https://github.com/<nome_de_usuario>/PyElit
```

Ao concluir, você terá o repositório em seu computador e então é só abrir em seu editor preferido e fazer suas modificações.

Antes você deve criar sua branch para seu desenvolvimento:

```sh
git checkout -b <nome_branch>
```

Para o nome da branch use o número da issue para facilitar, ex: `issue_17`.

E agora pode começar o desenvolvimento :smiley: .

Ao terminar suas modificações, você deve commitar suas alterações, mas primeiro:

```sh
git add .
```

O comando acima irá preparar todos os arquivos modificados para serem commitados, passando por todas as alterações que foram feitas por você onde decedirá se a alteração será adicionada (você deve estar dentro da pasta do projeto para usar o comando). Agora é só commitar as alterações:

```sh
git commit -m "<Sua_Mensagem>"
```

Lembre-se de usar mensagens claras. Se o que você está resolvendo já possui uma issue aberta, faça referência a issue no commit. Ex: `git commit -m "#17 - Add contributing.md"`

E por fim, você irá enviar as alterações para o repositório remoto:

```sh
git push --set-upstream origin <nome_branch>
```

Isso é apenas na primeira vez que vai enviar uma nova branch para o repositório remoto, nas próximas vezes, basta apenas:

```sh
git push
```

Mas isso só irá alterar no seu fork, o repositório oficial não vai ter suas alterações e agora ? :confused:

Calma, agora que entra a `Pull Request` ou `PR`

## Contribuir com implementação:

Depois de ter realizado o fork e o clone do projeto, escolhido seu editor de texto favorito. Então é hora de codar.

Mas calma ai, antes de qualquer coisa, você deve **escolher uma issue** que pretender trabalhar. Se a issue que trata sobre a funcionalidade não existir, você deve criar e dizer que esta trabalhando nela, caso ela exista você deve dizer lá(caso não já tenha alguém) que pretende trabalhar na issue. E após feito isso, agora sim você está pronto para **codar**.

### Entendendo as pastas:

O projeto se encontra na pasta `pyelit`, estamos aceitando dicas de nomes para biblioteca também :blush: .

- Na pasta `dados`: Possue os textos usados para treinar o topic modeling.

- Na pasta `docs`: Encontra-se os arquivos de documentação da biblioteca.

- Na pasta `Geoparsing`: Encontra-se todos os arquivos sobre as funcionalidades relacionadas com o geoparsing.

- Na pasta `./gazetteer`: Encontra-se os arquivos do gazetteer usados pela biblioteca.
- Na pasta `./utils`: Encontra-se os arquivos onde tem as funções que foram/são utilizadas pela biblioteca. Ex: Para processar os dados do gazetteer.

- Na pasta `Pre_processamento`: Encontra-se os arquivos usados para processamentos dos dados, funções que podem ser uteis para o geoparsing e topic modeling.

- Na pasta `TopicModeling`: Encontra-se todos os arquivos sobre as funcionalidades relacionadas com o topic modeling.

- Na pasta `modelo`: Encontra-se o modelo treinado do Topic Modeling.

### Como executar a aplicação:

Usamos o pipenv para melhor facilidade de gerenciamento das dependências.
Então é preciso instalar antes de tudo:

- Instalar o pipenv:

```bash
$ pip install pipenv
```

Agora você deve ativar o virtualenv(aqui já será instalada todas as libs utilizadas):

```bash
$ pipenv shell
```

Agora você precisar instalar o modelo em pt-br do spacy:

```bash
$ python -m spacy download pt_core_news_sm
```

E pronto, você está pronto para iniciar o desenvolvimento.

**OBS:** Executar o comando acima dentro da pasta do projeto.

- Agora você esta pronto para implementar sua funcionalidade/correção.

### Entrando nos padrões:

Nós optamos por seguir o padrão da [PEP 8](https://www.python.org/dev/peps/pep-0008/). Para isso instale a extensão do [Python para o VSCode](https://marketplace.visualstudio.com/items?itemName=ms-python.python). Outra solução é usar o pycodestyle.

#### Pycodestyle:

Ele já é uma dev-package no projeto.

Com o virtualenv ativado, você pode executar o pycodestyle:

- Para executar o pycodestyle:

```bash
pycodestyle .
```

## Realizando uma Pull Request - PR

Na página do seu fork irá aparecer uma mensagem em amarelo solicitando que você faça uma Pull Request para o repositório original. Ao clicar irá abrir uma página para você preencher as informações sobre sua PR.

- Referencie a issue em que você está trabalhando usando `#<numero_da_issue>`

- Descreva suas modificações

- Espere pela avaliação da sua PR, e pode ocorrer de pedimos algumas alterações a seres feitas
8 changes: 4 additions & 4 deletions Main.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
# Geoparsing
g = Geoparsing()
r = g.geoparsing(
"Eu moro na Rua Treze de Maio no centro de campina grande", gazetteer_cg=True)
"Eu moro na Rua Treze de Maio no centro de campina grande",
gazetteer_cg=True)

print(r[:3])

print(len(r))

# Topic Modeling
# t = TopicModeling()
# r = t.rate_text("Minha rua esta cheia de lixo, as pessoas não respeitam nada")
# text = "Minha rua esta cheia de lixo, as pessoas não respeitam nada"
# r = t.rate_text(text)

# print(t.print_keywords(quant_max_palavras=5))

Expand Down
3 changes: 2 additions & 1 deletion Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
pycodestyle = "*"

[packages]
gensim = "==3.8.0"
Expand All @@ -17,4 +18,4 @@ plpygis = "*"
pyLDAvis = "*"

[requires]
python_version = "3.6"
python_version = "3.8"
Loading

0 comments on commit e9445b1

Please sign in to comment.