Sistema de galeria de imagens com análise automática por Google Gemini Vision e busca inteligente em linguagem natural.
- 📤 Upload de imagens/documentos
- 🤖 Análise automática com Google Gemini Vision
- 🔍 Busca inteligente em linguagem natural
- 📋 Sugestões de documentos faltantes
- 🏷️ Tags e keywords automáticas
- 💾 Armazenamento em SQLite
npm install- Obtenha uma API key gratuita em: https://aistudio.google.com/apikey
- Crie um arquivo
.envna raiz do projeto:
GEMINI_API_KEY_AI=sua_api_key_aquiNota: O arquivo .env já está no .gitignore para segurança.
npm run serverO servidor estará rodando em http://localhost:3001
Em outro terminal:
npm run devO frontend estará rodando em http://localhost:5173 (ou outra porta indicada pelo Vite)
- Faça upload de imagens através do botão "Upload" ou arrastando arquivos
- As imagens serão automaticamente analisadas pelo Gemini Vision
- O sistema extrairá:
- Tipo de documento (passaporte, identidade, comprovante, etc.)
- Keywords relevantes
- Descrição do conteúdo
- País de origem (se aplicável)
Digite na barra de busca em linguagem natural, por exemplo:
- "documentos para renovar AR em Portugal"
- "comprovantes de residência"
- "passaporte brasileiro"
- "documentos de identidade"
O sistema irá:
- Interpretar sua busca
- Encontrar documentos relevantes
- Sugerir documentos que você pode precisar mas ainda não tem
- Fornecer dicas de como obter documentos faltantes
O banco SQLite armazena:
id- ID únicofilename- Nome do arquivo no servidororiginalname- Nome originalmimetype- Tipo MIMEsize- Tamanho em bytescreated_at- Data de criaçãoai_description- Descrição gerada pela IAai_keywords- Keywords separadas por vírgulaai_document_type- Tipo de documento identificadoai_country- País do documento (se aplicável)ai_typical_use- Uso típico do documento
- Frontend: React + Vite + TailwindCSS
- Backend: Express.js + SQLite
- IA: Google Gemini Vision API
- Upload: Multer
Acesse http://localhost:3001/db para ver uma visualização HTML do banco de dados.
- A análise por IA acontece automaticamente no upload
- Se a API key não estiver configurada, o sistema funcionará mas sem análise inteligente
- A busca funciona melhor com pelo menos 3 caracteres
- Os resultados são filtrados em tempo real conforme você digita