Backend da aplicação Smart Shopping, uma plataforma inteligente de listas de compras com promoções geolocalizadas de mercados próximos.
O Smart Shopping nasceu com o objetivo de transformar listas de compras simples em uma experiência inteligente de economia doméstica.
A API permite:
autenticação de usuários
criação de listas de compras
gerenciamento de itens
promoções de mercados
busca de mercados próximos
promoções geolocalizadas
arquitetura escalável
documentação Swagger
testes automatizados
Node.js
Express
TypeScript
src/
├── controllers/
├── services/
├── repositories/
├── middlewares/
├── routes/
├── schemas/
├── tests/
├── prisma/
├── docs/
├── utils/
├── app.ts
└── server.ts
O projeto segue uma arquitetura em camadas:
Routes
↓
Controllers
↓
Services
↓
Repositories
↓
Database
Controllers : Responsáveis por lidar com requests e responses.
Services : Responsáveis pelas regras de negócio.
Repositories : Responsáveis pelo acesso ao banco de dados.
Middlewares : Responsáveis por autenticação e tratamento global de erros.
Cadastro
Login
Autenticação JWT
Criar listas
Listar listas
Adicionar itens
Marcar itens
Remover itens
Cadastro de mercados
Busca de mercados
Cadastro de promoções
Promoções por categoria
Promoções próximas
Busca de mercados próximos
Promoções por distância
Ordenação geográfica
git clone https://github.com/seu-usuario/smart-shopping-api.git
DATABASE_URL=postgresql://usuario:senha@localhost:5432/smart_shopping
JWT_SECRET=" supersecretjwt"
http://localhost:3000/api-docs
A API utiliza latitude e longitude para:
encontrar mercados próximos
ordenar promoções
calcular distância
Método
Endpoint
POST
/login
Método
Endpoint
POST
/users
GET
/users
Método
Endpoint
POST
/shopping-lists
GET
/shopping-lists
Método
Endpoint
POST
/markets
GET
/markets
Método
Endpoint
POST
/promotions
GET
/promotions
GET
/promotions/category/:category
GET
/promotions/nearby
upload de imagens
encartes digitais
scraping automático
IA para economia
favoritos
analytics
comparação de preços
cache com Redis
Docker
CI/CD
rate limiting
refresh token
roles/permissões
Senhas criptografadas com bcrypt
JWT Authentication
Middleware global de erros
Validação com Zod
O objetivo do Smart Shopping é evoluir para uma plataforma inteligente de economia doméstica baseada em:
listas inteligentes
promoções geográficas
comparação de preços
recomendação personalizada
Desenvolvido por Tonton 🚀
Este projeto está sob licença MIT.