O delivery da comunidade para a fronteira Brasil-Paraguai
Brazukas Delivery é uma plataforma moderna de delivery que conecta clientes, lojas e entregadores em Ciudad del Este, Paraguai. Construída com React, TypeScript, tRPC e banco de dados MySQL.
Este é o MVP (Minimum Viable Product) do Brazukas Delivery com todas as funcionalidades core implementadas:
- ✅ Listagem de lojas e produtos
- ✅ Carrinho e checkout com PIX/Dinheiro
- ✅ Rastreamento em tempo real com GPS
- ✅ Painel admin para gerenciamento
- ✅ App do entregador com GPS tracking
- ✅ Sistema de Proof of Delivery (POD)
- ✅ Cupons de desconto
- ✅ Avaliações de lojas
- ✅ Histórico de pedidos
- ✅ Programa de fidelidade
- ✅ Gateway de pagamento
- ✅ Notificações em tempo real
- ✅ Sistema de chat com suporte
- React 19 - UI library
- TypeScript - Type safety
- Tailwind CSS 4 - Styling
- shadcn/ui - Component library
- tRPC - Type-safe RPC
- Wouter - Routing
- Leaflet - Maps
- Supabase - Database & Realtime (PostgreSQL)
- Express.js - Legacy/Admin Backend
- tRPC - RPC framework
- JWT - Authentication
- Vite - Build tool
- pnpm - Package manager
- Manus - Deployment platform
- Node.js 18+
- pnpm 8+
- Conta no Supabase
git clone https://github.com/brazukas/delivery-mvp.git
cd brazukas_deliverypnpm installCrie um arquivo .env ou .env.local:
# Supabase (Obrigatório)
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keypnpm devAcesse http://localhost:3000
brazukas_delivery/
├── client/ # Frontend React (Vite)
│ ├── src/
│ │ ├── lib/
│ │ │ ├── api/ # Adaptadores de API (Supabase)
│ │ │ ├── supabase.ts # Cliente Supabase
│ │ │ └── ...
│ │ └── ...
│ └── ...
├── server/ # Backend Legacy/Admin
│ └── ...
├── drizzle/ # Legacy Database schema
├── README.md # This file
├── package.json
└── tsconfig.json
auth.me- Obter usuário atualauth.logout- Fazer logout
orders.create- Criar novo pedidoorders.getById- Obter detalhes do pedidoorders.list- Listar pedidos do usuárioorders.updateStatus- Atualizar status (admin)orders.validatePOD- Validar Proof of Delivery
merchants.list- Listar lojasmerchants.getById- Detalhes da lojamerchants.search- Buscar lojas
products.list- Listar produtosproducts.getById- Detalhes do produtoproducts.search- Buscar produtos
coupons.list- Listar cupons disponíveiscoupons.validate- Validar cupomcoupons.getByCode- Obter cupom por código
loyalty.getStatus- Status do usuárioloyalty.earnPoints- Ganhar pontosloyalty.redeemPoints- Resgatar pontosloyalty.getHistory- Histórico de transações
payment.createPaymentIntent- Criar intenção de pagamentopayment.confirmPayment- Confirmar pagamentopayment.getPaymentMethods- Métodos disponíveispayment.getTransactionHistory- Histórico de transações
notifications.sendNotification- Enviar notificaçãonotifications.getNotifications- Listar notificaçõesnotifications.markAsRead- Marcar como lida
chat.createConversation- Criar conversachat.getConversations- Listar conversaschat.sendMessage- Enviar mensagem
users
- id (PK)
- openId (unique)
- name, email
- role (user | admin)
- createdAt, updatedAt
merchants (lojas)
- id (PK)
- name, description
- category, rating
- address, phone
- createdAt, updatedAt
products
- id (PK)
- merchantId (FK)
- name, description
- price, image
- createdAt, updatedAt
orders
- id (PK)
- userId (FK)
- merchantId (FK)
- items (JSON)
- status (PENDING_PAYMENT, CONFIRMED, etc)
- totalAmount, discount
- address, paymentMethod
- createdAt, updatedAt
coupons
- id (PK)
- code (unique)
- discountType (percentage | fixed)
- discountValue
- minOrderValue
- maxUses, usedCount
- expiresAt
- isActive
loyaltyProgram
- id (PK)
- userId (FK, unique)
- points, cashback
- tier (bronze | silver | gold | platinum)
- totalSpent
reviews
- id (PK)
- userId (FK)
- merchantId (FK)
- rating (1-5)
- comment
- createdAt
carts
- id (PK)
- userId (FK, unique)
- items (JSON)
- couponCode
- totalAmount
pnpm testpnpm test:unitpnpm test:e2epnpm build# Fazer login
manus login
# Deploy
manus deployConfigure as variáveis de ambiente no painel de controle da Manus:
- DATABASE_URL (produção)
- JWT_SECRET (gerado)
- Todas as chaves de API
curl http://localhost:3000/api/healthAcesse /admin/logs para ver logs do sistema.
Acesse /admin/metrics para ver KPIs e gráficos.
- ✅ Validação de entrada em todos os endpoints
- ✅ Rate limiting para APIs
- ✅ CSRF protection
- ✅ XSS prevention
- ✅ JWT com expiração
- ✅ Manus OAuth integrado
- ✅ Proteção de rotas
- ✅ Criptografia de dados sensíveis
- ✅ SSL/TLS em produção
- ✅ Backup automático
- 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
- ✅ Listagem de lojas e produtos
- ✅ Carrinho e checkout
- ✅ Rastreamento em tempo real
- ✅ Painel admin
- ✅ App do entregador
- ✅ POD (Proof of Delivery)
- ✅ Cupons
- ✅ Avaliações
- ✅ Fidelidade
- ✅ Pagamentos
- ✅ Notificações
- ✅ Chat
- 📧 Email: [email protected]
- 💬 Discord: Brazukas Community
- 🐛 Issues: GitHub Issues
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
- Manus por fornecer a infraestrutura
- Comunidade da fronteira Brasil-Paraguai
- Todos os contribuidores
Feito com ❤️ para a comunidade da fronteira
Brazukas Delivery © 2025