# Liberi Kids - Sistema de Controle de Estoque

Sistema completo de controle de estoque desenvolvido especificamente para a **Liberi Kids - Moda Infantil**. Uma solução moderna e intuitiva para gerenciar produtos, clientes, fornecedores, despesas e vendas.

## 🚀 Funcionalidades

### 📦 Gestão de Produtos
- Cadastro completo de produtos com marca, nome, estação e valores
- Sistema de variações (tamanho, cor, quantidade)
- Upload de fotos para cada variação
- Controle de estoque em tempo real
- Vinculação com fornecedores

### 👥 Gestão de Clientes
- Cadastro completo com dados de contato
- Histórico de compras
- Informações de endereço e WhatsApp

### 🚛 Gestão de Fornecedores
- Cadastro de fornecedores com dados comerciais
- Controle de contatos (telefone, WhatsApp, e-mail)
- Vinculação com produtos

### 💰 Controle de Despesas
- Cadastro de diferentes tipos de despesas
- Vinculação com fornecedores
- Controle por data e valor
- Relatórios de gastos mensais

### 🛒 Sistema de Vendas
- Vendas à vista e parceladas
- Controle de itens vendidos
- Cálculo automático de totais
- Aplicação de descontos
- Histórico completo de vendas

### 📊 Dashboard Intuitivo
- Métricas em tempo real
- Gráficos de vendas por mês
- Distribuição de produtos por estação
- Resumo financeiro
- Indicadores de performance

## 🛠️ Tecnologias Utilizadas

### Backend
- **Node.js** - Runtime JavaScript
- **Express.js** - Framework web
- **SQLite** - Banco de dados
- **Multer** - Upload de arquivos
- **UUID** - Geração de IDs únicos

### Frontend
- **React** - Biblioteca de interface
- **React Router** - Roteamento
- **Axios** - Cliente HTTP
- **React Icons** - Ícones
- **Recharts** - Gráficos
- **React Hook Form** - Formulários
- **React Hot Toast** - Notificações

## 📋 Pré-requisitos

- Node.js (versão 14 ou superior)
- NPM ou Yarn

## 🔧 Instalação

1. **Clone o repositório ou navegue até a pasta do projeto:**
```bash
cd /home/tiago/Downloads/app_estoque
```

2. **Instale as dependências do backend:**
```bash
npm install
```

3. **Instale as dependências do frontend:**
```bash
cd client
npm install
cd ..
```

## 🚀 Como Executar

### Desenvolvimento

1. **Inicie o servidor backend:**
```bash
npm run dev
```
O servidor será executado na porta 5000.

2. **Em outro terminal, inicie o frontend:**
```bash
npm run client
```
O frontend será executado na porta 3000.

3. **Acesse o sistema:**
Abra seu navegador e vá para `http://localhost:3000`

### Produção

1. **Build do frontend:**
```bash
npm run build
```

2. **Inicie o servidor:**
```bash
npm start
```

## 📁 Estrutura do Projeto

```
app_estoque/
├── client/                 # Frontend React
│   ├── public/
│   ├── src/
│   │   ├── components/     # Componentes reutilizáveis
│   │   ├── pages/          # Páginas da aplicação
│   │   ├── services/       # Serviços de API
│   │   └── utils/          # Utilitários
├── uploads/                # Arquivos enviados
├── server.js              # Servidor principal
├── liberi_kids.db         # Banco de dados SQLite
└── README.md
```

## 🎯 Como Usar

### 1. Dashboard
- Visualize métricas gerais do negócio
- Acompanhe vendas, estoque e despesas
- Acesse ações rápidas

### 2. Produtos
- Cadastre novos produtos com todas as informações
- Adicione variações (tamanho, cor, quantidade)
- Faça upload de fotos para cada variação
- Gerencie o estoque

### 3. Clientes
- Cadastre clientes com dados completos
- Mantenha histórico de contatos
- Organize informações para vendas

### 4. Fornecedores
- Registre fornecedores e seus dados
- Mantenha contatos organizados
- Vincule produtos aos fornecedores

### 5. Despesas
- Crie tipos de despesas personalizados
- Registre todos os gastos da empresa
- Acompanhe despesas por período

### 6. Vendas
- Registre vendas à vista ou parceladas
- Adicione múltiplos itens por venda
- Aplique descontos
- Controle o estoque automaticamente

## 🔒 Segurança

- Upload de arquivos com validação de tipo
- Sanitização de dados de entrada
- Controle de acesso às rotas da API

## 📱 Responsividade

O sistema é totalmente responsivo e funciona perfeitamente em:
- Desktop
- Tablets
- Smartphones

## 🎨 Design

- Interface moderna e intuitiva
- Cores e tipografia profissionais
- Experiência de usuário otimizada
- Animações suaves e feedback visual

## 📈 Próximas Funcionalidades

- [ ] Sistema de backup automático
- [ ] Relatórios em PDF
- [ ] Integração com WhatsApp
- [ ] App mobile nativo
- [ ] Sistema de usuários e permissões

## 🐛 Problemas Conhecidos

Nenhum problema conhecido no momento.

## 📞 Suporte

Para suporte técnico ou dúvidas sobre o sistema, entre em contato através dos canais oficiais da Liberi Kids.

## 📄 Licença

Este projeto foi desenvolvido exclusivamente para a **Liberi Kids - Moda Infantil**.

---

**Desenvolvido com ❤️ para a Liberi Kids - Moda Infantil**
