This page was machine-translated from English. Report issues.

Como construir um sistema inteligente de alerta de promoções e quedas de preço no Amazon

Crie uma ferramenta poderosa que monitora o Amazon em busca de promoções relâmpago e quedas de preço, notificando os usuários instantaneamente sobre ótimos negócios. Este projeto combina raspagem da web, notificações em tempo real e gerenciamento de preferências do usuário para entregar um assistente de compras personalizado que ajuda os usuários a economizar dinheiro em seus produtos favoritos.

Create your own plan

Learn2Vibe AI

Online

AI

What do you want to build?

Riassunto Semplice

Um sistema automatizado inteligente que notifica os usuários sobre promoções relâmpago e quedas de preço no Amazon, ajudando os compradores a economizar dinheiro e aproveitar os melhores negócios sem esforço.

Documento dei Requisiti del Prodotto (PRD)

Objetivos:

  • Desenvolver um sistema que monitora o Amazon em busca de promoções relâmpago e quedas de preço
  • Fornecer notificações em tempo real aos usuários sobre negócios relevantes
  • Permitir que os usuários definam preferências e acompanhem produtos específicos
  • Criar uma interface amigável para gerenciar alertas e visualizar negócios

Público-alvo:

  • Compradores preocupados com o orçamento
  • Caçadores de promoções
  • Clientes frequentes do Amazon

Recursos-chave:

  1. Registro e autenticação de usuários
  2. Pesquisa e acompanhamento de produtos
  3. Configurações de alerta personalizáveis
  4. Notificações em tempo real (e-mail, push, SMS)
  5. Acompanhamento e visualização do histórico de preços
  6. Funcionalidade de compartilhamento de negócios
  7. Painel do usuário para gerenciar itens e alertas rastreados

Requisitos do usuário:

  • Interface fácil de usar para adicionar e gerenciar produtos rastreados
  • Capacidade de definir limiares de preço para alertas
  • Preferências de notificação personalizáveis
  • Acesso rápido a negócios atuais e históricos de preços
  • Tratamento seguro de dados de usuários e informações da conta Amazon

Flussi Utente

  1. Acompanhamento de Produtos:

    • O usuário pesquisa um produto no aplicativo
    • O usuário seleciona o produto para rastrear
    • O usuário define o preço desejado ou a porcentagem de queda
    • O sistema confirma o rastreamento e inicia o monitoramento
  2. Recebendo Alertas:

    • O sistema detecta uma queda de preço ou promoção relâmpago
    • O sistema verifica as preferências do usuário
    • O sistema envia uma notificação pelo(s) método(s) escolhido(s)
    • O usuário visualiza a notificação e clica para ver o negócio
  3. Gerenciando Itens Rastreados:

    • O usuário faz login no painel
    • O usuário visualiza a lista de itens rastreados
    • O usuário modifica as configurações de alerta ou remove itens
    • O sistema atualiza as preferências de rastreamento

Specifiche Tecniche

  • Front-end: React.js para um aplicativo web responsivo
  • Back-end: Node.js com Express.js para desenvolvimento de API
  • Banco de Dados: MongoDB para armazenar dados de usuários e informações de produtos
  • Raspagem da Web: Puppeteer ou Cheerio para extração de dados do Amazon
  • Atualizações em Tempo Real: Socket.io para notificações instantâneas
  • Autenticação: JWT para autenticação segura de usuários
  • Serviços de Notificação: SendGrid (e-mail), Firebase Cloud Messaging (push), Twilio (SMS)
  • Hospedagem: AWS EC2 para hospedagem da aplicação, S3 para ativos estáticos
  • Cache: Redis para melhor desempenho
  • Agendamento de Tarefas: Bull para gerenciar tarefas em segundo plano e raspagem periódica

Endpoint API

  • POST /api/auth/register - Registro de usuário
  • POST /api/auth/login - Login de usuário
  • GET /api/products/search - Pesquisar produtos no Amazon
  • POST /api/products/track - Adicionar produto à lista de rastreamento
  • GET /api/products/tracked - Obter produtos rastreados pelo usuário
  • PUT /api/products/:id/alert - Atualizar configurações de alerta
  • DELETE /api/products/:id/track - Remover produto do rastreamento
  • GET /api/deals - Obter promoções atuais para o usuário
  • POST /api/notifications/settings - Atualizar preferências de notificação

Schema del Database

Usuários:

  • _id: ObjectId
  • email: String
  • password: String (hashed)
  • notificationPreferences: Object

ProdutosRastreados:

  • _id: ObjectId
  • userId: ObjectId
  • amazonProductId: String
  • currentPrice: Number
  • targetPrice: Number
  • createdAt: Date

HistóricoDePreços:

  • _id: ObjectId
  • productId: String
  • price: Number
  • timestamp: Date

Promoções:

  • _id: ObjectId
  • productId: String
  • salePrice: Number
  • regularPrice: Number
  • startTime: Date
  • endTime: Date

Struttura dei File

/src /components Header.js Footer.js ProductCard.js AlertSettings.js NotificationPreferences.js /pages Home.js Login.js Register.js Dashboard.js ProductSearch.js DealsList.js /api auth.js products.js deals.js notifications.js /utils amazonScraper.js notificationSender.js priceCalculator.js /styles global.css components.css /public /assets logo.png icons/ /server /models User.js Product.js Deal.js /routes authRoutes.js productRoutes.js dealRoutes.js /services scrapingService.js notificationService.js server.js /scripts scheduledTasks.js README.md package.json .env

Piano di Implementazione

  1. Configuração do Projeto (1-2 dias)

    • Inicializar o repositório Git
    • Configurar o front-end em React e o back-end em Node.js
    • Configurar o MongoDB e o servidor básico
  2. Autenticação de Usuários (2-3 dias)

    • Implementar funcionalidade de registro e login
    • Configurar a autenticação JWT
  3. Pesquisa e Rastreamento de Produtos (3-4 dias)

    • Desenvolver a funcionalidade de pesquisa de produtos no Amazon
    • Criar o sistema de rastreamento de produtos
    • Implementar o painel do usuário para produtos rastreados
  4. Raspagem da Web e Monitoramento de Preços (4-5 dias)

    • Desenvolver a funcionalidade de raspagem da web para o Amazon
    • Implementar o acompanhamento de preços e o registro do histórico
    • Configurar tarefas agendadas para verificações de preço regulares
  5. Sistema de Notificação (3-4 dias)

    • Implementar serviços de notificação por e-mail, push e SMS
    • Criar configurações de preferência de notificação para os usuários
  6. Detecção e Alertas de Promoções (3-4 dias)

    • Desenvolver algoritmos para detectar quedas de preço significativas e promoções relâmpago
    • Implementar o sistema de alerta em tempo real
  7. Desenvolvimento do Front-end (5-6 dias)

    • Projetar e implementar componentes da interface do usuário
    • Criar layouts responsivos para todas as páginas
    • Implementar a visualização de dados para o histórico de preços
  8. Testes e Refinamento (3-4 dias)

    • Realizar testes completos de todos os recursos
    • Otimizar o desempenho e corrigir bugs
    • Refinar a experiência do usuário com base em comentários
  9. Implantação e Lançamento (2-3 dias)

    • Configurar o ambiente de produção na AWS
    • Configurar o pipeline de CI/CD
    • Realizar testes finais e lançar o aplicativo

Strategia di Distribuzione

  1. Configurar uma instância AWS EC2 para hospedar o back-end em Node.js
  2. Configurar o AWS S3 para armazenar ativos estáticos
  3. Configurar o MongoDB Atlas para hospedagem do banco de dados
  4. Usar o AWS CloudFront como CDN para melhor desempenho global
  5. Implementar o AWS CloudWatch para monitoramento e registro
  6. Configurar o pipeline de CI/CD usando GitHub Actions ou AWS CodePipeline
  7. Usar o Docker para containerização, garantindo ambientes consistentes
  8. Implementar a estratégia de implantação blue-green para atualizações sem downtime
  9. Configurar backups automatizados para o banco de dados
  10. Usar o AWS Route 53 para gerenciamento de domínio e roteamento DNS

Motivazione del Design

A pilha de tecnologia (React, Node.js, MongoDB) foi escolhida por sua escalabilidade, desempenho e forte suporte ao ecossistema. Ferramentas de raspagem da web, como o Puppeteer, permitem a extração confiável de dados do Amazon. As notificações em tempo real garantem que os usuários nunca percam um negócio, enquanto a combinação de notificações por e-mail, push e SMS atende a várias preferências do usuário. A estrutura de arquivos modular promove a organização e a manutenção do código. Os serviços da AWS fornecem uma infraestrutura robusta e escalável para hospedar e gerenciar o aplicativo. O plano de implementação prioriza a funcionalidade básica primeiro, seguida por recursos avançados e otimizações, garantindo uma base sólida para o produto.