IMPORTANTE: As variáveis do Supabase NÃO devem ter o prefixo VITE_ porque isso as expõe no frontend, comprometendo a segurança.
SUPABASE_URL(nãoVITE_SUPABASE_URL)SUPABASE_ANON_KEY(nãoVITE_SUPABASE_ANON_KEY)OPENAI_API_KEY(nãoVITE_OPENAI_API_KEY)
As variáveis de ambiente no Vercel devem estar configuradas em MAIÚSCULAS:
SUPABASE_URLSUPABASE_ANON_KEYOPENAI_API_KEY
define: {
global: 'globalThis',
'import.meta.env.SUPABASE_URL': JSON.stringify(process.env.SUPABASE_URL),
'import.meta.env.SUPABASE_ANON_KEY': JSON.stringify(process.env.SUPABASE_ANON_KEY),
'import.meta.env.OPENAI_API_KEY': JSON.stringify(process.env.OPENAI_API_KEY),
}develop→ Staging (staging.lucrax.ai)main→ Production (lucrax.ai)
SEMPRE DEVEMOS TRABALHAR NO BRANCH DEVELOP E SÓ FAZER COMIT E PUSH PARA O MAIN QUANDO EU MANDAR
- Frontend: Vite + React + TypeScript
- Styling: Tailwind CSS
- Charts: Chart.js + react-chartjs-2
- Backend: Supabase
- Deploy: Vercel
- Autenticação: Supabase Auth
src/
├── components/ # Componentes React
├── contexts/ # Contexts (Auth, etc.)
├── services/ # Serviços (Supabase, etc.)
├── config/ # Configurações
├── utils/ # Utilitários
└── env.d.ts # Tipos TypeScript para env vars