Feedback Widget

Projeto desenvolvido durante a 8º edição do evento NLW feito pela Rocketseat

Sobre o ProjetoFuncionalidadesPré-requisitosComo executarTecnologiasAutorLicença

🚧 Projeto 🚀 Em construção... 🚧


💻️ Sobre o projeto

A aplicação é constituida tanto do front-end, quanto do back-end, o deploy do front-end foi feito na vercel e o back-end na railway. Clique aqui para acessar a demonstração do projeto

Front-end

Temos um widget de feedback que pode ser colocado em outros projetos, nele podemos selecionar qual tipo de feedback queremos enviar, escrever um comentário, tirar uma screenshot da tela e enviar esse feedback para o back-end

Back-end

O back-end realiza o armazenamento dos feedbacks enviados usando o postgreSQL como banco de dados, faz o envio de emails para o administrador da aplicação acompanhar o envio de feedbacks além de tratar todas as regras de negócio.

Um dos back-ends mais bem feitos que já fiz, usamos o princípio SOLID junto com testes unitários para tornar a aplicação mais robusta possível


⚙️ Funcionalidades

  • Front-end
    • Widget de feedback totalmente funcional
    • Tema Light/Dark
    • Dasboard para administração dos feedbacks
    • Validação de campos e erros
  • Back-end
    • Cadastro de feedbacks no banco
    • Aplicação de testes unitários
    • Envio de emails para o mailtrap
    • Envio de emails reais usando algum serviço no ambiente de produção
    • Melhorar HTML/CSS do Email
    • Autenticação com Firebase

🟢 Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js, Docker com uma imagem do postgreSQL instalada. Além disto é bom ter um editor para trabalhar com o código como VSCode

🚀 Como Executar o projeto

Front-end

# Clone este repositório
$ git clone git@github.com:jose-uilton-ferreira/nlw-return-impulse.git

# Acesse a pasta do projeto no terminal/cmd
$ cd nlw-return-impulse

# Vá para a pasta web
$ cd web

# Instale as dependências
$ npm install

# Execute a aplicação em modo de desenvolvimento
$ npm run dev

# O servidor inciará na porta:3000 - acesse <http://localhost:3000>

Crie o arquivo ".env.local" e coloque como valor na variável "VITE_API_URL" a URL onde estará rodando o back-end do projeto

Back-end

# Clone este repositório
$ git clone git@github.com:jose-uilton-ferreira/nlw-return-impulse.git

# Acesse a pasta do projeto no terminal/cmd
$ cd nlw-return-impulse

# Vá para a pasta server
$ cd server

# Instale as dependências
$ npm install

# Crie o arquivo .env e coloque como valor na variável DATABASE_URL a URL do banco de dados posgreSQL que está rodando no docker

# Execute as migrations do prisma
npx prisma migrate dev

# Execute a aplicação em modo de desenvolvimento
$ npm run dev

# O servidor inciará na porta:3333 - acesse <http://localhost:3333>

🛠 Tecnologias

As seguintes ferramentas foram usadas na construção do projeto:

Front-end

Back-end


🦸 Autor


José Uilton

Feito com ❤️ por José Uilton 👋 Entre em contato!

Twitter Badge Linkedin Badge Gmail Badge


📝 Licença

Este projeto foi feito sobe a licença MIT.