---
# System prepended metadata

title: Índice

---

![Logo WSP](https://cdn-images-1.medium.com/max/800/1*qrH4QN418rvCCuAENWiWEA.png)

# Índice

- [Sobre](#🔖-Sobre)
- [Tecnologias utilizadas](#🛠-Tecnologias-utilizadas)
- [Instalação para desenvolvimento](#🗂-Instalação-para-desenvolvimento)
- [Arquitetura](#🏢-Arquitetura)
- [Melhorias técnicas](#🚧-Melhorias-técnicas)
- [Processo de release ](#🚀-Processo-de-release)

## 🔖 Sobre 

É uma ferramenta de vendas e gerenciamento do recebimento das comissões.

Trata-se de um espaço virtual repleto de ferramentas para que o Agente gerencie suas vendas, integrando logísticas necessárias ao bom desenvolvimento das atividades comerciais, tais como: instruções, aulas com técnicas de vendas, emissão de notas fiscais, administração de finanças e relatórios e etc.

Na WSP todas as informações ficam armazenadas de maneira virtual, o que possibilita o acesso ao sistema de vendas a qualquer hora e em qualquer lugar.


---

## 🛠 Tecnologias utilizadas

O projeto foi desenvolvido utilizando as seguintes tecnologias

- [React](https://reactjs.org)
- [TypeScript](https://www.typescriptlang.org/)
- [Redux-Saga](https://redux-saga.js.org/)
- [React Testing Library](https://testing-library.com/docs/react-testing-library/intro)
- [Styled Components](https://www.styled-components.com/)
- [Next.js](https://nextjs.org/)
- [Storybook](https://storybook.js.org/)
- [ESLint](https://eslint.org/)
- [Axios](https://github.com/axios/axios)

---

## 🗂 Instalação para desenvolvimento

```bash

    # Instalar as dependências
    $ yarn install

    # Iniciar o projeto
    $ yarn dev

    # Iniciar o storybook
    $ yarn storybook

    # Execução dos testes
    $ yarn test
```

---

## 🏢 Arquitetura

[Click aqui para mais informações sobre o fluxograma](https://whimsical.com/arquitetura-4KahLhxTKxccKXbC8VBkWh)

![Arquitetura](https://cdn-images-1.medium.com/max/800/1*kMoY0K4HxIfiRHvVTEa-qA.png)

---

## 🚧 Melhorias técnicas

- [ ] Alinhar e definir o que é uma entrega com qualidade (funcional, usar padrões de código, implementar testes automatizados)
- [ ] Criar um style guide de melhores práticas
- [ ] Criar arquitetura de repositórios
- [ ] Atualização das documentações que existem
- [ ] Remover códigos desnecessários da v1 no projeto
- [ ] Atualização do storybook
- [ ] Aplicar atomic design nos componentes
- [ ] Realizar code review mais detalhado
- [ ] Usar o husky para automatização

---

## 🚀 Processo de release 

[Click aqui para mais informações sobre o fluxograma]( https://whimsical.com/gitflow-8khVuWmXuqM9gDhfSeFQiw)

![Release](https://cdn-images-1.medium.com/max/800/1*Ug_l48Jqn5fQ4HwIMvkADg.png)

- Primeiro passo, fazer o merge da branch das alterações (feature) para a branch temp, executar o pipeline da temp com todo o código já disponível para testes .
- Abrir uma Pull Request (PR) à partir da branch das alterações (feature) para staging, para a realização do code review.
- Após a realização do code review e a aprovação do QCA, é realizado o merge da feature para staging. 
- Criar uma branch de release à partir da staging `release/v[major.minor.patch]`(seguir a numeração do changelog), adicionar as alterações realizadas no changelog.
- Mandar um PR da release para a master, lembrando de excluir branchs que não forem mais usadas.

Obs: Sempre lembrar de sincronizar as branchs antes de qualquer procedimento.

---

Feito com ❤️ pelo time WSP 👋🏽