Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
Controle e análise de abastecimentos da frota
Translation pending
BusinessTypeScript · CSSGitHub @fgregorio56-techOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Aplicação web para controlar e analisar os abastecimentos de uma frota de veículos: importação de planilhas, correção de erros, indicadores de consumo, ranking de veículos e metas de média por veículo.
.xlsx/.xls/.csv com reconhecimento
automático de colunas (placa, data, km, litros, valor, posto, combustível,
motorista, marca, modelo, ano). Veículos novos são criados automaticamente..xlsx dos abastecimentos já validados,
filtrando por período.Next.js 16 (App Router) · TypeScript · Prisma + PostgreSQL · NextAuth (Credentials) · Tailwind CSS · Recharts · SheetJS (xlsx)
npm install
cp .env.example .env # ajuste DATABASE_URL, NEXTAUTH_SECRET, MASTER_EMAIL e MASTER_PASSWORD
npx prisma migrate deploy
npx prisma db seed # cria o usuário mestre inicial
npm run dev
É necessário ter um banco PostgreSQL acessível (local ou na nuvem) antes de
rodar prisma migrate deploy — veja a seção Banco de dados abaixo.
Acesse http://localhost:3000 e entre com o e-mail e
senha definidos em MASTER_EMAIL / MASTER_PASSWORD (padrão em
.env.example: troque antes de usar em produção). Depois de logado, crie os
demais usuários em Usuários.
Gere um NEXTAUTH_SECRET seguro com:
openssl rand -base64 32
Usa PostgreSQL (DATABASE_URL no .env). Para desenvolvimento local, instale
o Postgres e crie um banco vazio; para produção/hospedagem em nuvem (ex.:
Vercel), use um provedor gerenciado como Neon (tem plano
gratuito) e cole a connection string fornecida por ele em DATABASE_URL.
postgresql://...).fgregorio56-tech/Abastecimento).DATABASE_URL — a connection string do NeonNEXTAUTH_SECRET — gere com openssl rand -base64 32NEXTAUTH_URL — a URL pública que a Vercel vai gerar (ex.:
https://abastecimento.vercel.app)MASTER_EMAIL, MASTER_PASSWORD, MASTER_NAME — credenciais do
usuário mestre inicialscripts/migrate-on-deploy.mjs). No primeiro deploy, rode a migração e o seed contra o banco de
produção (uma única vez), pela sua máquina local com DATABASE_URL
apontando para o Neon:
npx prisma migrate deploy
npx prisma db seed
MASTER_EMAIL /
MASTER_PASSWORD. Qualquer pessoa com a URL já consegue acessar a tela
de login — crie os demais usuários (Editor/Visualizador) em Usuários.npm run dev — ambiente de desenvolvimentonpm run build / npm start — build e execução em produçãonpm run lint — checagem de lintnpx prisma studio — explorar o banco de dadosnpx prisma db seed — (re)criar o usuário mestre inicialO cabeçalho tem um espaço reservado (app/(app)/LogoBadge.tsx) para as logos
dos grupos parceiros (RETEC e Grupo GVC), hoje com um selo de texto como
placeholder. Para usar as imagens reais, salve os arquivos em public/
(ex.: public/logo-retec.png, public/logo-gvc.png) e troque o conteúdo de
LogoBadge.tsx por <img src="/logo-retec.png" ... />.