- Python 3.10+
- Node.js 18+
- Conta Google Cloud (BigQuery e Firestore)
- API Key do Google Gemini
- Firebase Project
git clone https://github.com/seu-usuario/ta-certo-isso-ai-analytics.git
cd ta-certo-isso-ai-analytics/backendpython -m venv venv
source venv/bin/activate # Linux/Mac
# ou
venv\Scripts\activate # Windowspip install -r requirements.txtexport GOOGLE_API_KEY=sua_api_key_gemini
export GOOGLE_CLOUD_PROJECT=seu-projeto-id
export BIGQUERY_DATASET=fact_checking_analytics
export BIGQUERY_TABLE=analisesExistem duas formas de autenticar com o Google Cloud:
gcloud auth application-default loginEste comando abre o navegador para você fazer login com sua conta Google.
Passo a passo para obter o arquivo JSON:
-
Acesse o Google Cloud Console:
- Vá para console.cloud.google.com
- Selecione seu projeto
-
Crie uma Service Account:
- No menu lateral, vá em IAM & Admin → Service Accounts
- Clique em + CREATE SERVICE ACCOUNT
- Dê um nome (ex:
analytics-backend) - Descrição (ex:
Service account para o backend do analytics) - Clique em CREATE AND CONTINUE
-
Conceda permissões (na etapa 2 do formulário):
- BigQuery Admin - Para ler/escrever no BigQuery
- Cloud Datastore User - Para acessar o Firestore
- Vertex AI User - Para usar o Google Gemini
- Clique em CONTINUE e depois DONE
-
Baixe o arquivo JSON:
- Na lista de service accounts, encontre a que você criou
- Clique nos 3 pontos (⋮) à direita → Manage keys
- Clique em ADD KEY → Create new key
- Selecione JSON
- Clique em CREATE - o arquivo será baixado automaticamente
-
Configure a variável de ambiente:
# Mova o arquivo para um local seguro mkdir -p ~/.gcp mv ~/Downloads/seu-projeto-xxxxx.json ~/.gcp/analytics-credentials.json # Configure a variável de ambiente export GOOGLE_APPLICATION_CREDENTIALS="$HOME/.gcp/analytics-credentials.json" # Para tornar permanente, adicione ao seu ~/.bashrc ou ~/.zshrc: echo 'export GOOGLE_APPLICATION_CREDENTIALS="$HOME/.gcp/analytics-credentials.json"' >> ~/.bashrc
⚠️ Segurança: Nunca compartilhe ou commite este arquivo JSON no Git. Ele contém credenciais sensíveis!
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000Acesse: http://localhost:8000/docs (Swagger UI)
cd ../frontendnpm installCrie .env:
VITE_API_URL=http://localhost:8000
VITE_FIREBASE_API_KEY=sua_firebase_api_key
VITE_FIREBASE_AUTH_DOMAIN=seu-projeto.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=seu-projeto-id
VITE_FIREBASE_STORAGE_BUCKET=seu-projeto.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=123456789
VITE_FIREBASE_APP_ID=1:123456789:web:abcdefnpm run devAcesse: http://localhost:5173