/detector-ofensas

Um projeto de detecção de comentários ofensivos desenvolvido para o desafio de seleção do @bitlab-ufrn.

Primary LanguageJavaScriptMIT LicenseMIT

Acesso

(Aplicação) https://detector-ofensas.web.app/

Login de administrador
Email: ruben@segurancaonline.com
Senha: SecOn2023!

(API) https://api-detector-ofensas.fly.dev/

Key: api-key
Value: JhQwXXztY1s5OsSKgj3mMoJ

Visualize com:

Contexto

Para resolver o problema de um de seus clientes e também vender seu produto para novos clientes, a empresa Segurança Online criou um sistema de detecção de palavras impróprias, com capacidade de detectar até mesmo palavras que possuam caracteres especiais e acentos. Além disso, o sistema conta com um gerenciamento dinâmico das palavras armazenadas no banco de dados, permitindo que qualquer administrador logado possa visualizar, criar, alterar ou remover as palavras.

demo_remover demo_caracteres

Desafio

DESAFIO.md

Como instalar o projeto

  1. Clone o repositório com o comando: git clone https://github.com/bitlab-ufrn/selecao-2023-RubenFilipe07/
Para rodar o projeto React
  1. Certifique-se de ter o node.js instalado na sua máquina, caso não tenha, baixe aqui: nodejs.org
  2. Na raiz do projeto /detector-ofensas digite npm i no terminal para baixar as dependências
  3. Digite npm run dev para iniciar o servidor e o acesse pelo link: http://localhost:8080/
arquivo .ENV
API_KEY:: Chave de autenticação que autoriza a utilização da API.
VITE_API_KEY :: Chave de autenticação autoriza o request da API do lado do cliente.
DATABASE_URL: URL que faz conexão com banco de dados.
JWT_SECRET: Uma chave secreta usada para assinar tokens JWT (JSON Web Tokens) usados para autenticar usuários.
Para rodar o projeto Node
  1. Na raiz do projeto em /backend executenpm i para instalar as dependências
  2. Crie um arquivo .ENV e adicione as variáveis de ambiente (descritas acima)
  3. Instale o PostgreSQL.js: postgresql.org
  4. Execute node index.js para iniciar a aplicação
  5. O projeto rodará em: https://localhost:8080/

Endpoints

GET /adiciona-palavras-arquivo: lê um arquivo bd_seed.txt que contém uma lista de palavras ofensivas e adiciona cada uma delas no banco de dados.
POST /palavras-ofensivas: adiciona uma nova palavra à tabela palavras_ofensivas no banco de dados.
GET /palavras-ofensivas: retorna todas as palavras ofensivas cadastradas na tabela palavras_ofensivas no banco de dados.
GET /palavras-ofensivas/:id: retorna a palavra cujo ID é especificado na URL da requisição.
DELETE /palavras-ofensivas/:id: exclui a palavra cujo ID é especificado na URL da requisição.
PUT /palavras-ofensivas/:id: atualiza a palavra cujo ID é especificado na URL da requisição.
POST /cadastro-admin: cadastra um novo administrador na tabela admins do banco de dados.
POST /login-admin: autentica um administrador a partir de seu email e senha.
POST /verifica-texto: verifica se um texto contém alguma palavra ofensiva.

Tecnologias utilizadas

Front-end







Back-end






Banco de dados


Hospedagem



Licensa
MIT