Aplicativo Expo/React Native e BFF TypeScript para autoatendimento da DBS Telecom. O BFF integra o ERP IXC, persistência PostgreSQL/Neon, IA Gemini e serviços de atendimento, sempre sem incluir credenciais no aplicativo.
- Backend: Cloudflare Worker + PostgreSQL/Neon.
- Mobile: Expo SDK 57, distribuição Android via EAS.
- Ambiente de demonstração: pode usar dados ilustrativos; a interface identifica prévias e bloqueia ações financeiras ou de roteador sem confirmação do provedor.
- Integrações IXC/Gemini: dependem de credenciais e dados autorizados do ambiente destino. Uma suíte local aprovada não substitui um smoke test autenticado.
- Node.js 22+ para o backend; Node.js 20+ para o aplicativo mobile.
- Docker opcional para executar o backend localmente.
- Conta Cloudflare/Neon e credenciais de integração somente para publicação.
cd backend
Copy-Item .env.example .env
npm.cmd ci
npm.cmd test
npm.cmd run build
npm.cmd run devDefina DATABASE_URL para persistência PostgreSQL. Sem ela, os testes usam fallback em memória; este fallback não é adequado para produção.
cd mobile
Copy-Item .env.example .env
npm.cmd ci
npm.cmd run typecheck
npm.cmd test
npx.cmd expo startDefina apenas EXPO_PUBLIC_API_URL no mobile. Nunca coloque tokens IXC, Gemini, banco ou JWT em variáveis EXPO_PUBLIC_*.
# backend
cd backend; npm.cmd test; npm.cmd run build
# mobile
cd mobile; npm.cmd run typecheck; npm.cmd test
# E2E web (instale as dependências e o Chromium na primeira vez)
cd e2e; npm.cmd ci; npx.cmd playwright install chromium; npm.cmd testO E2E exporta o app atual para web e usa provedores isolados. Ele verifica fluxos desktop e viewport mobile, mas não substitui a validação visual em dispositivo Android/iOS.
# backend — credenciais ficam nos secrets do Worker
cd backend; npx.cmd wrangler deploy
# APK interno Android
cd mobile; npx.cmd eas-cli@latest build --platform android --profile previewAntes de publicar, aplique as migrações com npm.cmd run migrate, configure os secrets do Worker e valide a rota /api/health/ready com um JWT administrativo no ambiente publicado. Não use .env local como fonte de entrega.
- Arquitetura
- Integração IXC e rotas
- Fluxos de atendimento
- Segurança e guardrails
- Manual de desenvolvimento e testes
- Guia de apresentação
- Manifesto de entrega
Arquivos .env, bancos locais, caches, relatórios de teste, node_modules e artefatos de build não devem entrar no ZIP de entrega. Consulte o manifesto de entrega para a lista de inclusão/exclusão.