Este projeto é um E-commerce de produtos usados ou sem uso, baseado no Objetivo de Desenvolvimento Sustentável (ODS) da ONU número 12 - Consumo e Produção Sustentáveis.
Nosso objetivo é criar uma plataforma que facilite a conexão entre pessoas que desejam descartar ou vender materiais usados ou sem uso e pessoas interessadas em comprá-los.
- Cadastro e login de usuários, com autenticação.
- Possibilidade de ser vendedor e consumidor.
- Listagem de produtos e categorias.
- Compra e venda de produtos recicláveis.
- Busca por produtos e categorias.
- Sistema de avaliação de produtos e vendedores.
- HTML
- CSS
- JavaScript
- React
- Tailwind CSS
- Java
- Spring Boot
- MySQL
- Eloisa Marin: LinkedIn
- Fernando Lopes: LinkedIn
- Jaqueline Paula: LinkedIn
- Leonardo Duarte: LinkedIn
- Marina Pereira: LinkedIn
- Marília Tostes: LinkedIn
- Rafael Carmo: LinkedIn
Este é um projeto de sistema de controle de acesso e segurança desenvolvido com Spring Security e autenticação JWT. O sistema oferece funcionalidades para autenticação de usuários, gerenciamento de categorias e produtos.
Para configurar e executar o projeto localmente, siga estas etapas:
- Clone o repositório para o seu ambiente de desenvolvimento:
git clone https://github.com/seu-usuario/seu-repositorio.git
- Certifique-se de ter o JDK (Java Development Kit) e o Apache Maven instalados na sua máquina.
- Importe o projeto na sua IDE favorita como um projeto Maven existente.
- Certifique-se de configurar as dependências do projeto, como o Spring Boot e outras bibliotecas mencionadas no arquivo pom.xml.
- Configure as informações do banco de dados no arquivo application.properties ou application.yml.
- Compile e execute o projeto a partir da sua IDE ou utilizando o Maven:
mvn spring-boot:run
Após a execução do projeto, você pode acessar os endpoints HTTP para interagir com as funcionalidades oferecidas pelo sistema.
Para autenticar um usuário e receber um token JWT válido, envie uma solicitação POST para o endpoint /login com as credenciais de usuário. O token JWT será retornado como resposta e pode ser usado para autorização em outros endpoints.
Exemplo de solicitação:
POST /login
Content-Type: application/json
{
"email": "usuario@example.com",
"senha": "senha123"
}
O sistema oferece endpoints para criar, listar, atualizar e excluir categorias de produtos. As solicitações devem incluir um token JWT válido no cabeçalho Authorization para autorização.
Exemplo de criação de categoria:
POST /categorias
Authorization: Bearer {seu-token-jwt}
Content-Type: application/json
{
"nome": "Categoria de Exemplo",
"descricao": "Esta é uma categoria de exemplo"
}
Da mesma forma que as categorias, o sistema oferece endpoints para criar, listar, atualizar e excluir produtos. As solicitações também devem incluir um token JWT válido para autorização.
Exemplo de criação de produto:
POST /produtos
Authorization: Bearer {seu-token-jwt}
Content-Type: application/json
{
"nome": "Produto de Exemplo",
"descricao": "Este é um produto de exemplo",
"preco": 19.99,
"quantidade": 10,
"categoriaId": 1
}
O projeto inclui testes automatizados para garantir a qualidade e a integridade do código. Você pode executar os testes unitários utilizando o Maven:
mvn test
Contribuições são bem-vindas! Se você tiver sugestões de melhorias, correções de bugs ou novas funcionalidades, sinta-se à vontade para abrir uma issue ou enviar um pull request.