Sistema web interativo para planejamento visual de áreas de cultivo agroflorestal, desenvolvido com Vue.js 3 (Composition API).
⚡ Teste o sistema agora: https://coolabnet.github.io/croqui-saf/
Não é necessário instalar nada! O sistema roda completamente no navegador.
- ✅ Canvas interativo SVG com zoom e pan
- ✅ Drag and drop de plantas no canvas
- ✅ Grid opcional configurável
- ✅ Zoom in/out com mouse wheel
- ✅ Pan (arrastar) para navegar
- ✅ Dimensões configuráveis do terreno (10-200m)
- ✅ 10 plantas pré-cadastradas
- ✅ Busca/filtro de plantas
- ✅ Organização por categoria/estrato
- ✅ Cada planta com nome, científico, ícone, cor e raio da copa
- ✅ Drag and drop para adicionar no canvas
- ✅ Modal para adicionar novas plantas
- ✅ Campos: nome, científico, ícone, cor, raio da copa, categoria
- ✅ Seletor de emoji visual
- ✅ Color picker
- ✅ Validação de campos
- ✅ Persistência em localStorage
- ✅ Selecionar plantas posicionadas
- ✅ Mover plantas com drag and drop
- ✅ Excluir com Delete/Backspace
- ✅ Tooltip ao passar o mouse
- ✅ Painel lateral com detalhes da planta selecionada
- ✅ Visualização de raio da copa
- ✅ Salvar projeto como JSON
- ✅ Carregar projeto de arquivo
- ✅ Exportar como imagem PNG
- ✅ Limpar canvas
- ✅ Undo/Redo (Ctrl+Z / Ctrl+Y)
- ✅ Contador de plantas por espécie
- ✅ Cálculo de área do terreno
- ✅ Atalhos de teclado
- ✅ Notificações toast
- ✅ Persistência automática no localStorage
- Node.js 16+ e npm/yarn
- Instalar dependências:
npm install- Iniciar servidor de desenvolvimento:
npm run dev- Acessar a aplicação:
Abra o navegador em
http://localhost:3000
- Arraste uma planta da biblioteca lateral para o canvas
- A planta será posicionada onde você soltar
- O círculo colorido representa o raio da copa
- Mover: Clique e arraste a planta no canvas
- Selecionar: Clique na planta para ver detalhes
- Excluir: Selecione e pressione Delete/Backspace, ou use o botão no painel lateral
- Pan: Clique e arraste no espaço vazio do canvas
- Zoom: Use a roda do mouse ou os botões na toolbar
- Resetar View: Botão ↺ na toolbar
- Ajuste as dimensões (largura × altura) na toolbar
- Dimensões em metros (10-200m)
- Clique em "+ Nova Planta" na biblioteca
- Preencha os campos obrigatórios (marcados com *)
- Selecione um emoji clicando no campo de ícone
- Escolha uma cor no color picker
- As plantas ficam salvas no navegador
- Salvar: Clique em "💾 Salvar" - baixa arquivo JSON
- Carregar: Clique em "📂 Carregar" - selecione arquivo JSON
- Projetos também são salvos automaticamente no localStorage
- Clique em "📷 Exportar" para baixar PNG do canvas
Ctrl+Z: DesfazerCtrl+YouCtrl+Shift+Z: RefazerCtrl+S: Salvar projetoDeleteouBackspace: Excluir planta selecionada
croqui-saf/
├── index.html # HTML principal
├── package.json # Dependências
├── vite.config.js # Configuração Vite
└── src/
├── main.js # Ponto de entrada
├── style.css # Estilos globais
├── App.vue # Componente principal
├── components/
│ ├── SafCanvas.vue # Canvas SVG interativo
│ ├── PlantLibrary.vue # Biblioteca de plantas
│ ├── PlantForm.vue # Formulário de cadastro
│ └── Toolbar.vue # Barra de ferramentas
└── composables/
├── usePlants.js # Gerenciamento de plantas
└── useProject.js # Gerenciamento de projetos
O sistema vem com 40 plantas comuns em SAFs brasileiros, organizadas por estrato:
- Ipê Amarelo, Jatobá, Castanheira
- Abacateiro, Mangueira, Jaqueira, Cajueiro, Laranjeira, Limoeiro
- Goiabeira, Pitangueira, Jabuticabeira
- Bananeira, Cacau, Açaí, Pupunheira, Coqueiro Anão
- Araçazeiro, Aceroleira, Gravioleira
- Mamão, Café, Lichia, Cajá-Manga, Pêssego
- Ameixa, Romãzeira, Figueira
- Abacaxi, Mandioca, Inhame, Batata-Doce, Taioba, Morango
- Maracujá, Uva, Chuchu, Kiwi, Pimenta-do-Reino, Baunilha
- Vue.js 3 - Framework JavaScript reativo
- Composition API - API moderna do Vue
- Vite - Build tool e dev server
- SVG - Canvas vetorial para visualização
- LocalStorage - Persistência local de dados
- Canvas API - Exportação de imagem
- GitHub Pages - Hospedagem estática
O projeto está configurado com GitHub Actions para deploy automático:
- Todo push na branch
maingera um novo deploy - Build e publicação automáticos
- Disponível em: https://coolabnet.github.io/croqui-saf/
# Executar script de deploy
./deploy.sh# Gerar build de produção
npm run build
# Preview do build
npm run preview- Todos os dados são armazenados localmente no navegador (localStorage)
- Não há backend - sistema 100% frontend
- Compatível com navegadores modernos
- Responsivo para diferentes resoluções
Este é um projeto de código aberto. Sugestões e melhorias são bem-vindas!
MIT License - sinta-se livre para usar e modificar.
Desenvolvido com 🌱 para facilitar o planejamento de Sistemas Agroflorestais