maurocmendes / leechycupcakes

Cupcake - Loja virtual - Projeto Integrador Transdisciplinar em Engenharia de Software II
https://leechycupcakes.netlify.app/
0 stars 0 forks source link

Documentação da Loja - Leechy Cupcakes

REPOSITÓRIO DE PRODUÇÂO

Funcionalidades da Aplicação

Área do Cliente

  1. Autenticação e Perfil

    • Cadastro de usuário com informações pessoais
    • Login/Logout
    • Gerenciamento de perfil com dados de entrega
  2. Catálogo de Produtos

    • Visualização de cupcakes disponíveis
    • Filtros por:
      • Mais Pedidos
      • Novidades
      • Menor Preço
      • Maior Desconto
      • Black Friday
      • Natal
    • Detalhes do produto (ingredientes, preço, descrição)
  3. Carrinho de Compras

    • Adição/remoção de produtos
    • Ajuste de quantidade
    • Cálculo automático do total
    • Persistência do carrinho
  4. Pedidos

    • Histórico de pedidos
    • Acompanhamento de status
    • Detalhes completos dos itens
  5. Contato

    • Múltiplos canais de comunicação:
      • WhatsApp
      • Instagram
      • Twitter
      • Telefone
    • Informações de localização e horário de funcionamento

Área Administrativa

  1. Dashboard

    • Visão geral das vendas
    • Total de produtos cadastrados
    • Pedidos pendentes
    • Estatísticas em tempo real
  2. Gestão de Produtos

    • Cadastro de novos cupcakes
    • Edição de informações
    • Remoção de produtos
    • Controle de estoque
  3. Gestão de Pedidos

    • Visualização de todos os pedidos
    • Atualização de status
    • Histórico completo
  4. Gestão de Usuários

    • Lista de clientes cadastrados
    • Informações detalhadas de perfil
    • Histórico de compras por cliente

Documentação do Banco de Dados

Visão Geral

A aplicação utiliza um banco de dados PostgreSQL gerenciado pelo Supabase. O esquema do banco de dados foi projetado para suportar uma plataforma de e-commerce de cupcakes com gerenciamento de usuários, funcionalidade de carrinho de compras e processamento de pedidos.

Estrutura das Tabelas

1. profiles (Perfis)

Armazena informações do perfil do usuário, vinculado à autenticação do Supabase.

2. administrators (Administradores)

Gerencia privilégios de administrador.

3. cupcakes

Armazena informações dos produtos (cupcakes).

4. cart_items (Itens do Carrinho)

Gerencia itens nos carrinhos de compras dos usuários.

5. orders (Pedidos)

Armazena informações dos pedidos.

6. order_items (Itens do Pedido)

Armazena itens individuais dentro dos pedidos.

Relacionamentos Principais

  1. profiles.idauth.users.id
  2. administrators.idauth.users.id
  3. cart_items.user_idauth.users.id
  4. cart_items.cupcake_idcupcakes.id
  5. orders.user_idauth.users.id
  6. order_items.order_idorders.id
  7. order_items.cupcake_idcupcakes.id

Recursos Automatizados

  1. Gerenciamento automático de timestamps para created_at e updated_at
  2. Criação automática de perfil após o registro do usuário
  3. Políticas de Segurança em Nível de Linha (RLS) garantindo:
    • Usuários só podem visualizar e modificar seus próprios dados
    • Administradores têm acesso estendido para gerenciar produtos e visualizar todos os pedidos
    • Acesso público para visualizar produtos (cupcakes)

Quais tecnologias estão presentes no projeto?