From 545897e35f3582a21759694254b033425f1f8cbf Mon Sep 17 00:00:00 2001 From: Felipe Canin Novaes Date: Thu, 19 Mar 2026 23:22:38 -0300 Subject: [PATCH] chore: remove outdated OAuth configuration documentation --- OAuth.md | 83 -------------------------------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 OAuth.md diff --git a/OAuth.md b/OAuth.md deleted file mode 100644 index 3b3e12c..0000000 --- a/OAuth.md +++ /dev/null @@ -1,83 +0,0 @@ -# Plano: Configurar Google OAuth - -## Context - -O projeto já tem a estrutura OAuth implementada nos dois lados, mas ambos precisam de configuração/implementação para funcionar de ponta a ponta. - ---- - -## Status atual - -### Backend (Rust/Axum) — ✅ Lógica pronta, falta só configuração - -- Endpoint `POST /api/v1/auth/oauth/google` já existe -- Verifica o `id_token` com `https://oauth2.googleapis.com/tokeninfo` -- Cria usuário se novo, ou vincula a conta existente por email -- **Só falta**: preencher as variáveis de ambiente em `backend/.env` - -### Mobile (React Native/Expo) — ⚠️ UI pronta, falta integração do SDK - -- Botão "Sign in with Google" existe em `mobile/app/(auth)/login.tsx:55` -- `GoogleLoginUseCase` já está definido em `mobile/src/infrastructure/container.ts` -- **Falta**: integrar o SDK nativo do Google Sign-In e chamar o use case - ---- - -## O que você vai precisar - -### 1. Google Cloud Console - -- Criar um projeto (ou usar existente) -- Ativar a API: **Google Sign-In** (ou "Google Identity") -- Criar credenciais OAuth 2.0: - - **Android**: SHA-1 do keystore + package name (`com.meowspool.*`) - - **iOS**: Bundle ID - - **Web/Backend**: Client ID + Client Secret (para o backend verificar o token) - -### 2. Backend — apenas `.env` - -Arquivo: `backend/.env` - -``` -GOOGLE_CLIENT_ID=xxxx.apps.googleusercontent.com -GOOGLE_CLIENT_SECRET=xxxx # necessário se usar Authorization Code Flow -``` - -### 3. Mobile — integrar SDK - -Instalar `@react-native-google-signin/google-signin` ou usar `expo-auth-session` (mais simples para Expo). - -Implementar `onGoogleLogin()` em `mobile/app/(auth)/login.tsx`: - -```typescript -// 1. Chamar SDK do Google → obtém id_token -// 2. Chamar GoogleLoginUseCase.execute(id_token) -// 3. Use case já envia para POST /api/v1/auth/oauth/google -``` - ---- - -## Arquivos críticos a modificar - -| Arquivo | O que fazer | -| ----------------------------- | --------------------------------------------------------- | -| `backend/.env` | Adicionar GOOGLE_CLIENT_ID e GOOGLE_CLIENT_SECRET | -| `mobile/app/(auth)/login.tsx` | Implementar `onGoogleLogin()` (linha ~55) | -| `mobile/package.json` | Adicionar dependência do SDK Google Sign-In | -| `mobile/app.json` | Adicionar configuração do Google Sign-In para Android/iOS | - ---- - -## Resumo da resposta à pergunta - -**Precisa configurar os dois**, mas por motivos diferentes: - -- **Backend**: só variáveis de ambiente (15 minutos) -- **Mobile**: integração do SDK nativo (algumas horas) - ---- - -## Verificação - -1. Backend: testar `POST /api/v1/auth/oauth/google` com um token real via curl/Postman -2. Mobile: testar fluxo completo no simulador/dispositivo