Skip to content

lchenrique/store

Folders and files

NameName
Last commit message
Last commit date

Latest commit

3391b03 · Nov 20, 2024

History

6 Commits
Nov 20, 2024
Nov 18, 2024
Nov 20, 2024
Nov 20, 2024
Nov 18, 2024
Nov 20, 2024
Nov 18, 2024
Nov 18, 2024
Nov 20, 2024
Nov 20, 2024
Nov 18, 2024
Nov 18, 2024
Nov 20, 2024
Nov 20, 2024
Nov 20, 2024
Nov 18, 2024
Nov 18, 2024
Nov 18, 2024

Repository files navigation

🚀 StorePulse | E-commerce & Admin Platform

Uma plataforma de e-commerce moderna e completa construída com Next.js 15, App Router, Supabase e Prisma. Inclui uma área de loja para clientes e um dashboard administrativo completo para gerenciamento de produtos, pedidos e clientes.

🚀 Tecnologias

✨ Funcionalidades

  • 🔐 Autenticação com Supabase
  • 👤 Gerenciamento de Perfil
  • 🛒 Carrinho de Compras
  • 💳 Integração com MercadoPago
  • 📦 Gerenciamento de Produtos
  • 📝 Gerenciamento de Pedidos
  • 🎨 Tema Claro/Escuro
  • 🎯 Painel Administrativo
  • 📱 Design Responsivo

📁 Principais Rotas

  • / - Página inicial da loja
  • /(shop) - Grupo de rotas da loja
    • /(shop)/products - Lista de produtos
    • /(shop)/cart - Carrinho de compras
    • /(shop)/checkout - Finalização de compra
  • /auth/login - Login
  • /auth/register - Registro
  • /minha-conta - Área do cliente
  • /admin - Painel administrativo
    • /admin/products - Gerenciamento de produtos
    • /admin/orders - Gerenciamento de pedidos
    • /admin/customers - Gerenciamento de clientes
    • /admin/settings - Configurações da loja

🛠️ Pré-requisitos

  • Node.js 16+
  • PostgreSQL
  • Supabase CLI
  • NPM ou Yarn

🚀 Configuração do Ambiente Local

  1. Instale as dependências:
npm install
# ou
yarn install
  1. Configure as variáveis de ambiente:
cp .env.example .env.local
  1. Configure as seguintes variáveis no arquivo .env.local:
# Supabase
NEXT_PUBLIC_SUPABASE_URL=           # URL do projeto Supabase
NEXT_PUBLIC_SUPABASE_ANON_KEY=      # Chave anônima do Supabase
SUPABASE_SERVICE_ROLE_KEY=          # Chave de serviço do Supabase

# App
NEXT_PUBLIC_APP_URL=                # URL da aplicação (ex: http://localhost:3000)
NEXT_PUBLIC_API_URL=                # URL da API (ex: http://localhost:3000/api)

# Database
DATABASE_URL=                       # URL de conexão com o PostgreSQL

# Serviços
MERCADOPAGO_ACCESS_TOKEN=          # Token de acesso do MercadoPago

# Storage
S3_END_POINT=                      # Endpoint do S3 (Supabase Storage)
S3_ACCESS_KEY=                     # Chave de acesso do S3
S3_SECRET_KEY=                     # Chave secreta do S3
  1. Inicie o servidor de desenvolvimento:
npm run dev
# ou
yarn dev

📚 Estrutura do Projeto

store/
├── src/
│   ├── app/                    # Rotas e páginas
│   │   ├── (shop)/            # Grupo de rotas da loja
│   │   ├── admin/             # Área administrativa
│   │   ├── auth/              # Autenticação
│   │   ├── api/               # API Routes
│   │   └── minha-conta/       # Área do cliente
│   ├── components/            # Componentes React
│   ├── hooks/                 # Custom Hooks
│   ├── lib/                   # Configurações e utilitários
│   ├── providers/             # Provedores de contexto
│   ├── scripts/               # Scripts de automação
│   ├── services/              # Serviços e integrações
│   ├── store/                 # Gerenciamento de estado global
│   ├── types/                 # Definições de tipos TypeScript
│   └── styles/                # Estilos globais
├── prisma/                    # Schema e migrações do Prisma
├── public/                    # Arquivos estáticos
└── package.json

🔒 Níveis de Acesso

O sistema possui dois níveis de acesso:

  • 👤 CUSTOMER: Usuário comum que pode comprar produtos
  • 🛡️ ADMIN: Administrador com acesso ao painel de controle

🎨 UI/UX

  • Tema claro/escuro
  • Design responsivo (Desktop, Tablet, Mobile)
  • Componentes reutilizáveis do shadcn/ui
  • Customização de cores via Tailwind

📦 Scripts Disponíveis

# Desenvolvimento
npm run dev         # Inicia o servidor de desenvolvimento
npm run build      # Cria a build de produção
npm run start      # Inicia o servidor de produção
npm run lint       # Executa o linter

⚙️ Configuração do Supabase Local

  1. Instale o Supabase CLI
  2. Inicie os serviços locais:
supabase start
  1. Use as credenciais fornecidas para configurar o .env.local

🔐 Variáveis de Ambiente

Para obter as variáveis de ambiente necessárias:

  1. Supabase: Acesse o projeto no dashboard do Supabase
  2. MercadoPago: Obtenha as credenciais no painel do MercadoPago
  3. S3/Storage: Use as credenciais fornecidas pelo Supabase

📝 Notas de Desenvolvimento

  • Use branches para novas features
  • Mantenha os tipos TypeScript atualizados
  • Siga o padrão de componentes do shadcn/ui
  • Atualize o schema do Prisma quando necessário

📅 Última atualização: Dezembro 2023

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages