Compare commits

..

1 Commits

Author SHA1 Message Date
Erik
5e67b50695 Adicionar README com documentacao do projeto v1.0 2025-11-26 16:45:18 -03:00
2 changed files with 167 additions and 34 deletions

162
README.md Normal file
View File

@@ -0,0 +1,162 @@
# CMS OCCTO Engenharia v1.0
Sistema de gerenciamento de conteúdo (CMS) desenvolvido para a OCCTO Engenharia.
## 📋 Visão Geral
CMS completo para gerenciamento do site institucional da OCCTO Engenharia, empresa especializada em engenharia veicular, mecânica e segurança do trabalho.
## 🚀 Tecnologias
- **Frontend:** Next.js 16 (App Router)
- **Estilização:** Tailwind CSS 4
- **Banco de Dados:** PostgreSQL 12 + Prisma ORM
- **Storage:** MinIO (S3-compatible)
- **Autenticação:** JWT com bcryptjs
- **Deploy:** Docker Compose + Dokploy
## 📁 Estrutura do Projeto
```
├── frontend/ # Aplicação Next.js
│ ├── src/
│ │ ├── app/
│ │ │ ├── (public)/ # Páginas públicas (home, sobre, contato, projetos, serviços)
│ │ │ ├── admin/ # Painel administrativo
│ │ │ ├── acesso/ # Página de login
│ │ │ └── api/ # API Routes
│ │ ├── components/ # Componentes reutilizáveis
│ │ └── lib/ # Utilitários (auth, minio, prisma)
│ ├── prisma/
│ │ ├── schema.prisma # Schema do banco de dados
│ │ └── seed.mjs # Dados iniciais
│ └── public/ # Assets estáticos
├── docker-compose.yml # Configuração Docker
└── docs/ # Documentação
```
## ✨ Funcionalidades
### Painel Administrativo
- **📄 Páginas** - Edição completa das páginas Home, Sobre e Contato
- **🛠️ Serviços** - CRUD de serviços com ícones personalizáveis
- **📂 Projetos** - CRUD de projetos/portfólio com upload de imagens
- **👥 Usuários** - Gerenciamento de usuários administradores
- **💬 Leads** - Visualização de mensagens de contato recebidas
- **⚙️ Configurações** - Personalização de cor primária do tema
### Site Público
- **Home** - Hero, diferenciais, serviços, sobre, depoimentos, estatísticas, CTA
- **Sobre** - Missão, visão, valores da empresa
- **Serviços** - Lista de serviços oferecidos
- **Projetos** - Portfólio de projetos realizados
- **Contato** - Formulário de contato com informações da empresa
### Recursos Técnicos
- ✅ Autenticação JWT segura
- ✅ Upload de imagens para MinIO (S3)
- ✅ Tema dinâmico (cor primária configurável)
- ✅ Design responsivo
- ✅ SEO otimizado
- ✅ Cookies consent LGPD
- ✅ Loading states e feedback visual
- ✅ Confirmação de exclusão
## 🗄️ Banco de Dados
### Modelos Prisma
- **User** - Usuários administradores
- **PageContent** - Conteúdo das páginas (JSON flexível)
- **Service** - Serviços oferecidos
- **Project** - Projetos do portfólio
- **Lead** - Mensagens de contato
- **SiteSettings** - Configurações do site (tema)
## 🐳 Deploy com Docker
### Serviços
- **postgres** - PostgreSQL 12 Alpine
- **minio** - MinIO (storage S3-compatible)
- **frontend** - Aplicação Next.js
### Variáveis de Ambiente
```env
# PostgreSQL
POSTGRES_USER=admin
POSTGRES_PASSWORD=sua_senha_segura
POSTGRES_DB=occto_db
# MinIO
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=sua_senha_segura
# App
DATABASE_URL=postgresql://admin:senha@postgres:5432/occto_db?schema=public
JWT_SECRET=seu_jwt_secret_muito_seguro
MINIO_ENDPOINT=minio
MINIO_PORT=9000
MINIO_ACCESS_KEY=admin
MINIO_SECRET_KEY=sua_senha_segura
MINIO_BUCKET_NAME=occto-images
```
### Comandos
```bash
# Deploy
docker compose up -d --build
# Logs
docker compose logs -f frontend
# Rebuild
docker compose down && docker compose up -d --build
```
## 🔐 Credenciais Padrão
Após o seed inicial:
- **Email:** `admin@occto.com`
- **Senha:** `admin`
⚠️ **Importante:** Altere as credenciais em produção!
## 📝 Changelog v1.0
### Funcionalidades Implementadas
- [x] Sistema de autenticação JWT
- [x] CRUD completo de serviços
- [x] CRUD completo de projetos
- [x] CRUD completo de usuários
- [x] Edição de páginas (Home, Sobre, Contato)
- [x] Sistema de leads/mensagens de contato
- [x] Upload de imagens para MinIO
- [x] Configuração de tema (cor primária)
- [x] Docker Compose para deploy
- [x] Integração com Dokploy
- [x] Seed de dados iniciais
### Correções
- [x] Hover dinâmico baseado na cor primária
- [x] Healthcheck do PostgreSQL
- [x] Compatibilidade com CPUs antigos (PostgreSQL 12 Alpine)
- [x] Seed em JavaScript puro (sem ts-node em produção)
## 📄 Licença
Projeto desenvolvido para OCCTO Engenharia. Todos os direitos reservados.
---
**Versão:** 1.0
**Data:** Novembro/2025
**Desenvolvido por:** Assistente IA + Erik

View File

@@ -1,38 +1,9 @@
# 📋 Tarefas Pendentes - CMS OCCTO - Tradução não funcionou em todos componentes
## 🔧 Melhorias a Implementar - Logotipo (Formulário)
### 🌐 Internacionalização - Link do WhatsApp
- [ ] **Tradução incompleta** - Revisar e traduzir todos os componentes que ainda estão em inglês
### 🎨 Configurações do Admin - Desabilitar local
- [ ] **Upload de Logotipo** - Criar formulário para o cliente poder trocar o logotipo do site nas configurações
### 📱 Integrações - Dados Reais no Dashboard
- [ ] **Link do WhatsApp** - Adicionar configuração do número de WhatsApp e botão flutuante no site
### 🗺️ Localização
- [ ] **Desabilitar local** - Adicionar opção para ocultar/desabilitar seção de localização/mapa na página de contato
### 📊 Dashboard
- [ ] **Dados Reais no Dashboard** - Implementar estatísticas reais no painel admin:
- Total de projetos
- Total de serviços
- Total de leads/mensagens
- Leads não lidos
- Últimas mensagens recebidas
---
## ✅ Concluídas
- [x] Sistema de autenticação
- [x] CRUD de serviços
- [x] CRUD de projetos
- [x] CRUD de usuários
- [x] Edição de páginas
- [x] Sistema de leads
- [x] Upload de imagens (MinIO)
- [x] Configuração de cor primária
- [x] Hover dinâmico
- [x] Deploy Docker/Dokploy