Uma aplicação web construída com Next.js para importação em massa de contatos para o sistema uTalk através de arquivos CSV.
- Upload de arquivos CSV
- Mapeamento inteligente de colunas
- Validação de contatos existentes
- Atualização em lote de campos personalizados
- Interface de usuário intuitiva com feedback em tempo real
- Suporte a campos personalizados da organização
- Paginação e filtros na visualização de contatos
- Relatório detalhado de importação
- Next.js 14
- TypeScript
- Tailwind CSS
- React Dropzone
- Papa Parse (para processamento CSV)
- Radix UI (componentes base)
- Lucide React (ícones)
- Node.js 18+
- NPM ou Yarn
- Credenciais da API uTalk (token e ID da organização)
-
Clone o repositório
git clone https://github.com/alissonryan/umbler-talk-topone.git
-
Instale as dependências
npm install
ou
yarn install
-
Configure as variáveis de ambiente criando um arquivo
.env.local
:
NEXT_PUBLIC_API_BASE_URL=https://app-utalk.umbler.com/api
NEXT_PUBLIC_UTALK_API_TOKEN=seu-token-aqui
NEXT_PUBLIC_UTALK_ORGANIZATION_ID=seu-id-org-aqui
npm run dev
ou
yarn dev
/app
- Rotas e layouts da aplicação/components
- Componentes React reutilizáveis/lib
- Utilitários e funções de API/public
- Arquivos estáticos
O projeto implementa:
- Rate limiting
- Headers de segurança
- Validação de entrada
- Sanitização de dados
- Proxy reverso para chamadas API
O arquivo CSV deve conter no mínimo as seguintes colunas:
- Nome
- Telefone
Colunas adicionais serão mapeadas para campos personalizados da organização.
- Upload: Faça upload do arquivo CSV
- Mapeamento: Associe as colunas do CSV aos campos do sistema
- Validação: Verifique contatos existentes e novos
- Processamento: Importação e atualização dos contatos
- Resultados: Visualize o relatório de importação
- Faça um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature
) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature'
) - Push para a branch (
git push origin feature/AmazingFeature
) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
- Alisson Ryan - Desenvolvimento inicial
Para suporte, envie um email para [email protected]
A aplicação estará disponível em http://localhost:3000