| title | desenvolvimento local |
|---|---|
| description | configure o ambiente de desenvolvimento para trabalhar com nossa API |
este guia te ajuda a configurar o ambiente de desenvolvimento para trabalhar com nossa API do dashboard backend.
# clone o repositório
git clone [REPO_URL]
cd dashboard-backend
# instale dependências
npm installvocê precisará configurar as seguintes variáveis no wrangler.toml:
[vars]
JWT_SECRET = "seu_jwt_secret"
BEEHIIV_API_KEY = "sua_api_key"
GEMINI_API_KEY = "sua_gemini_key"
RESEND_API_KEY = "sua_resend_key"
# ... outras variáveis# inicia o servidor local conectado ao ambiente remoto
npm run devsua API estará disponível em http://localhost:8787.
você pode testar os endpoints usando curl ou Postman:
# teste um endpoint público
curl http://localhost:8787/referrals/count
# teste um endpoint autenticado
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
http://localhost:8787/referralsnossa API é organizada da seguinte forma:
dashboard-backend/
├── src/
│ ├── routes/ # definições de rotas
│ ├── handlers/ # lógica de negócio
│ ├── services/ # integrações externas
│ ├── middleware/ # autenticação e cache
│ ├── schema/ # schemas do banco
│ └── types/ # tipos TypeScript
├── drizzle/ # migrações do banco
└── wrangler.toml # configuração do Workers
ossa arquitetura utiliza múltiplos bancos D1 especializados:
dados principais, métricas e newsletters gamificação, leituras e engagement gestão de relacionamento com clientes formulários dinâmicos e submissionspara aplicar migrações localmente:
# gerar nova migração
npm run generate
# aplicar migrações localmente
npm run migratequando estiver pronto para fazer deploy:
# deploy com minificação e source maps
npm run deploypara melhor experiência de desenvolvimento:
- VSCode com extensões TypeScript
- Drizzle Kit para gestão do banco
- Postman ou Insomnia para teste de APIs
- Wrangler para gestão do Cloudflare Workers
instale o wrangler CLI globalmente:
```bash
npm install -g wrangler
```
ou use via npx:
```bash
npx wrangler dev --remote
```
faça login no Cloudflare:
```bash
wrangler login
```
verifique se o `account_id` está correto no `wrangler.toml`.
verifique se os database IDs estão corretos no `wrangler.toml` e se os bancos existem no painel do Cloudflare.
verifique os logs do Sentry ou use `wrangler tail` para debug em tempo real:
```bash
wrangler tail
```