Sistema de analytics para jogos conectado com API Django e frontend React/TypeScript.
- Django 5.2.7
- Django REST Framework
- JWT Authentication
- SQLite (desenvolvimento)
- PostgreSQL (produção via Docker)
- CORS habilitado
- React 18
- TypeScript
- Vite
- Tailwind CSS
- shadcn/ui
- React Router DOM
- Python 3.8+
- Node.js 16+
- npm ou bun
- Navegue para a pasta do backend:
cd Backend- Instale as dependências:
pip install -r requirements.txt- Execute as migrações:
python manage.py migrate- Inicie o servidor:
python manage.py runserverO backend estará disponível em: http://localhost:8000
- Navegue para a pasta do frontend:
cd Frontend- Instale as dependências:
npm install- Inicie o servidor de desenvolvimento:
npm run devO frontend estará disponível em: http://localhost:8080
O frontend está configurado para se conectar automaticamente com o backend Django. A configuração pode ser encontrada em:
- Arquivo de configuração:
Frontend/src/lib/api.ts - Variável de ambiente:
VITE_API_BASE_URL=http://localhost:8000
POST /user/create/- Criar usuárioPOST /user/login/- LoginPOST /token/refresh/- Refresh tokenPOST /user/password-reset/- Solicitar reset de senhaPOST /user/password-reset/confirm/- Confirmar reset de senha
GET /user/preferences/- Preferências do usuárioPUT /user/preferences/- Atualizar preferênciasPOST /user/toggle-dark-mode/- Alternar modo escuro
GET /Steam/Steam_Search/- Pesquisa SteamGET /Steam/Dota_Search/- Pesquisa Dota 2GET /Riot/Riot_Search/- Pesquisa Riot Games
O sistema utiliza JWT (JSON Web Tokens) para autenticação:
- Access Token: Válido por 60 minutos
- Refresh Token: Válido por 7 dias
- Auto-refresh: O sistema automaticamente renova tokens expirados
- ❌ Removida dependência
@supabase/supabase-js - ❌ Removida pasta
src/integrations/supabase/ - ❌ Removidas variáveis de ambiente do Supabase
- ✅ Criado cliente API personalizado (
src/lib/api.ts) - ✅ Implementado sistema de autenticação JWT
- ✅ Auto-refresh de tokens
- ✅ Tratamento de erros HTTP
- ✅ Rotas protegidas com
ProtectedRoute
- ✅
Auth.tsx- Conectado com API Django - ✅
Index.tsx- Verificação de autenticação - ✅
Profile.tsx- Dados do usuário da API - ✅
VerticalNav.tsx- Logout via API - ✅
App.tsx- Rotas protegidas implementadas
- Fork o 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