USER GUIDE

Manual do Firescope

Da instalação ao uso diário, este guia pode ser lido em ordem para você começar a usar o app imediatamente. Todas as imagens são telas reais do aplicativo.

Instalação

  1. Na página de download, baixe o.dmg da versão Mac (você pode escolher entre Apple Silicon e Intel).
  2. Abra o .dmg baixado earraste o ícone do Firescope para a pasta "Aplicativos".
  3. Abra o Firescope a partir da pasta Aplicativos.
O Firescope é assinado e notarizado pela Apple. O app abre normalmente, sem o aviso de "não foi possível verificar o desenvolvedor".

Windows

  1. Na página de download, baixe e execute oFirescope-Setup.exe.
  2. Se aparecer o aviso do SmartScreen na primeira execução, clique em"Mais informações" → "Executar assim mesmo" para continuar.

Configuração inicial (idioma e tema)

Na primeira execução, uma tela de configuração em 4 etapas é aberta. Primeiro, escolha o idioma de exibição (com Japonês, English, 简体中文, 繁體中文, 한국어, Español, Português, Français e Deutsch — 9 idiomas embutidos). A mudança é aplicada assim que você clica, então experimente à vontade se estiver na dúvida.

Etapa 1: seleção do idioma de exibição (Japonês / English)
Etapa 1: seleção do idioma de exibição (Japonês / English)

Em seguida, escolha o tema visual. Há 10 opções, incluindo Light / Dark. Aqui também a prévia é exibida na hora, ao clicar.

Etapa 2: seleção do tema (alterne entre 10 opções na hora)
Etapa 2: seleção do tema (alterne entre 10 opções na hora)
Tanto o idioma quanto o tema podem ser alterados a qualquer momento em⚙ Configurações e 🎨 Paleta, no canto inferior direito.

Conectar ao Firestore

A conexão usa a chave privada da conta de serviço (JSON) do Firebase. Se você ainda não tem uma, basta seguir as instruções na tela para obtê-la em cerca de um minuto.

Etapa 3: conectar com o JSON da conta de serviço
Etapa 3: conectar com o JSON da conta de serviço
  1. Ao clicar em "Abrir página de configuração da conta de serviço", a página correspondente do Console do Firebase é aberta no navegador (local: Configurações do projeto → Contas de serviço).
  2. Clique em "Gerar nova chave privada" para baixar o JSON.
  3. Volte ao Firescope e, em "Selecionar arquivo JSON e conectar", escolha o JSON baixado. Também é possívelselecionar os JSONs de vários projetos ao mesmo tempopara conectá-los todos de uma vez.
  4. Escolha o ambiente da conexão (desenvolvimento / teste / staging / produção). Ele é exibido na barra lateral como um rótulo colorido, e a intensidade daproteção de segurança também é definida por esse rótulo.
A chave é criptografada com uma chave derivada do Keychain do macOS e fica salva apenas neste Mac. Nada é enviado para fora.
Também é possível conectar a um emulador do Firestore local. No+da barra lateral, escolha "Conectar ao emulador" e informe o host (por exemplo, localhost:8080) e o ID do projeto.

Ver os dados

Abra uma conexão na barra lateral e clique em uma coleção para ver os documentos em uma tabela. Cada cabeçalho de coluna traz um selo de tipo (string / int / time etc.), então o formato dos dados fica claro à primeira vista.

Grade com tipos anotados. Clicar em uma linha mostra os detalhes no painel à direita
Grade com tipos anotados. Clicar em uma linha mostra os detalhes no painel à direita
  • Ao clicar em uma linha, todos os campos do documento aparecem no painel à direita.
  • Ordenação, quantidade de itens exibidos e busca em grupo (collection group) podem ser alteradas na barra de ferramentas.
  • A contagem de leituras é sempre exibida na barra de status (uma referência para o consumo de cota).

⌘P saltar entre coleções pelo nome

⌘K buscar por ID de documento

⌘F focar a busca de coleções na barra lateral

Nomes lógicos (exibição traduzida dos campos)

Nomes de campo em inglês, como carryingOutCoffinMasterId, podem ser exibidos com um nome lógico em português (ou outro idioma). Oalternador "Nomes lógicos" na barra de ferramentas alterna a qualquer momento entre nome físico e nome lógico.

  • O dicionário é editado pelo ícone 📖 na barra de ferramentas. Há dois níveis de aplicação: "comum para toda a conexão" e "apenas esta coleção (sobrescreve)".
  • "Tradução automática" preenche os campos vazios de uma vez, usando o dicionário embutido e uma API de tradução gratuita.
  • Ao clicar em "Abrir no Google Tradutor", a página de tradução é aberta com os nomes de campo já em inglês; basta copiar a tradução e voltar ao app para aplicá-la de uma só vez.
  • Clique com o botão direito no cabeçalho de uma coluna → "Definir nome lógico…" para editar rapidamente apenas aquela coluna.
  • O selo de tipo do cabeçalho (string / int etc.) pode ser mostrado ou ocultado pelo alternador "Exibir tipos".
Os nomes lógicos afetam apenas a exibição. A exportação de CSV e as consultas continuam usando os nomes físicos, então a compatibilidade dos dados não é afetada.

Abas e grupos

Clique com o botão direito em uma coleção → "Abrir em nova aba" para adicionar abas, como em um navegador. As abas podem ser reunidas em grupos, no estilo do Chrome.

Grupo de abas. Clicar no chip recolhe o grupo; o número indica quantas abas há dentro
Grupo de abas. Clicar no chip recolhe o grupo; o número indica quantas abas há dentro
  • Clique com o botão direito em uma aba → "Adicionar a novo grupo" para criar um grupo. É possível definir nome e cor.
  • Clicar no chip do grupo recolhe ou expande as abas.
  • Um duplo clique na aba permite alterar o nome e a cor de fundo.
  • Arraste e solte para reordenar e mover abas entre grupos.
  • O estado das abas é restaurado após reiniciar o app (é possível desativar isso nas configurações).

Visualização dividida

Clique com o botão direito em uma coleção → "Exibir dividido à direita" para colocar duas coleções lado a lado. É útil para conciliar dados mestres com transações.

Visualização dividida. Coleções diferentes de cada lado, cada uma com sua própria consulta
Visualização dividida. Coleções diferentes de cada lado, cada uma com sua própria consulta
  • Também é possível dividir arrastando uma coleção da barra lateral até a borda esquerda ou direita da tela.
  • Arrastar o chip de um painel permite trocar os lados ou extrair o painel para uma nova aba.
  • O estado da divisão é mantido por aba.

Monitoramento em tempo real

Ao clicar em "Monitorar" na barra de ferramentas, as alterações da coleção exibida são refletidas ao vivo na grade. Alterações feitas por outro app ou pelo servidor entram diretamente, sem precisar recarregar.

  • Na caixa de diálogo antes de iniciar, é possível restringir por condições (campo e valor), ordenação e limite de itens.
  • O feed de alterações, à direita, lista "inclusão / atualização / exclusão" em ordem cronológica, mostrando também quais campos mudaram.
  • O monitoramento é somente leitura. Operações de gravação feitas durante o monitoramento continuam passando normalmente pelo pipeline de segurança.
  • É possível monitorar até 5 itens ao mesmo tempo.
  • Após o tempo definido, o monitoramento para automaticamente (o tempo pode ser alterado nas configurações), evitando consumo excessivo de leituras.
O monitoramento observa uma janela dos primeiros N documentos que atendem às condições. Em coleções grandes, restrinja com condições ou ordene por updatedAt de forma decrescente para acompanhar melhor "as alterações mais recentes".

Editar dados

Clique duas vezes em uma célula para editá-la diretamente.Enter confirma, Esc cancela. Tipos como int e timestamp são preservados na gravação.

Edição em linha. A célula é reescrita mantendo o tipo original
Edição em linha. A célula é reescrita mantendo o tipo original

Toda gravação passa pelo pipeline de segurança:

  1. Confirmação — uma caixa de diálogo aparece de acordo com o rótulo de ambiente × o risco da operação. Operações destrutivas em produção exigemdigitar o ID do projeto.
  2. Backup automático — os documentos afetados são capturados antes da execução.
  3. Execução — a gravação é realizada.
  4. Registro de operações— é registrada independentemente de sucesso ou falha (consulte em "Registro de operações", na barra inferior).
Em conexões com o rótulo "Produção", a confirmação para exclusões e atualizações em massa é a mais rigorosa. Se for apenas para investigação, deixar a conexão emsomente leitura traz mais tranquilidade (clique com o botão direito na conexão → Somente leitura).

Backup e restauração

Os snapshots capturados pouco antes de operações destrutivas ficam acumulados em"Backups", na barra inferior. Ao selecionar um, aprévia de restauraçãoé aberta, permitindo conferir as diferenças de recriação / sobrescrita / sem alteração antes de restaurar.

Prévia de restauração. Confira as diferenças campo a campo antes de 'Executar restauração'
Prévia de restauração. Confira as diferenças campo a campo antes de 'Executar restauração'
  • ⌘Z (ou o ícone ↩︎ na barra lateral) permiterestaurar instantaneamente a última gravação.
  • Snapshots mais antigos são descartados ao ultrapassar o limite de gerações. Fixe com 📌 os que quiser manter.

Console

Em "Console", na barra lateral, você pode escrever consultas em JavaScript no estilo firebase-admin. Execute com ⌘Enter e o resultado aparece em uma tabela com tipos anotados.

Consulta escrita em JS e executada. O resultado vira uma tabela, copiável como CSV / JSON
Consulta escrita em JS e executada. O resultado vira uma tabela, copiável como CSV / JSON
const snap = await db.collection('orders')
  .where('status', '==', 'paid')
  .orderBy('amount', 'desc')
  .limit(20)
  .get();
return snap.docs.map((d) => ({ id: d.id, ...d.data() }));
  • Para quem prefere o mouse, há também um construtor visual(get / update / create / delete). As condições montadas podem ser convertidas em JS com "Refletir no código".
  • Código que contém gravações é executado na ordemdry-run → prévia de gravação → aplicação, então os dados nunca mudam de forma repentina.
  • Também há suporte para visualização com join (junção).

Importação/exportação de CSV

Exportação

Ao clicar em "Exportar CSV"na barra de ferramentas da coleção, o resultado da consulta atualmente exibido (já com filtros e ordenação aplicados) é salvo em CSV. Como o cabeçalho traz aanotação de tipo, os tipos não se perdem mesmo em uma reimportação posterior.

Importação

Assistente de importação de CSV. Confira o tipo e o modo das colunas, veja a prévia da contagem e execute
Assistente de importação de CSV. Confira o tipo e o modo das colunas, veja a prévia da contagem e execute
  1. Em "Importar", na barra de ferramentas, selecione o arquivo CSV (Shift_JIS também é detectado automaticamente).
  2. Confira o tipo de cada coluna e o modo (upsert / somente novos / somente atualização).
  3. Em "Verificar contagem", veja a prévia de quantos itens serão criados ou sobrescritos.
  4. Em "Executar importação" → após a caixa de confirmação, os dados são importados. Os itens sobrescritos recebem backup automático antes da execução.

Verificação de esquema (detecção de inconsistências)

Clique com o botão direito em uma coleção →"Verificação de esquema…"para ler a coleção inteira e detectar automaticamentecampos com tipos misturados, campos ausentes apenas em alguns documentos e campos raros que podem indicar um erro de digitação(limite de 20.000 itens).

  • Campos ausentes em conjunto, no mesmo grupo de documentos, são reunidos em um único cartão. "Abrir todos" marca todas as linhas correspondentes de uma vez, permitindo seguir direto para uma exclusão em massa, por exemplo.
  • Ao clicar no ID de um documento correspondente, a grade rola automaticamente até a linha e a destaca.
  • Os resultados são mantidos mesmo depois de fechar o assistente, então você pode ir e voltar quantas vezes quiser enquanto confere os documentos.
  • Na aba "Validação com esquema Zod", é possível colar um esquema Zod (TypeScript) para validar todos os documentos.

Comparar e copiar entre ambientes

Comparar com outro ambiente

Clique com o botão direito em uma coleção →"Comparar com outro ambiente…"para confrontar coleções de mesmo nome em dois ambientes, como desenvolvimento e produção. As diferenças (inclusão / exclusão / alteração) são listadas por documento e por campo.

  • É possível especificar campos a excluir da comparação, como updatedAt.
  • O conteúdo da comparação pode ser exportado como CSV.

Copiar para outro ambiente

Em "Copiar para outro ambiente…", você pode duplicar uma coleção para outra conexão (ambiente). A quantidade de itens e a existência de sobrescritas são exibidas em prévia antes da execução, e a gravação em produção passa normalmente pela proteção de confirmação rigorosa.

Usuários do Authentication

Em "Authentication", na barra lateral, você pode listar e gerenciar os usuários do Firebase Authentication.

  • Lista de e-mail, nome de exibição, provedor, data de criação e último login. O alternador de nomes lógicos também permite exibir os campos em português.
  • Suporte para desativar / ativar e excluir usuários, além do envio de e-mail de redefinição de senha.
  • O UID do usuário pode ser copiado para conferência cruzada com os documentos do Firestore.
  • Operações destrutivas (como exclusão) passam pelo mesmo pipeline de segurança do Firestore (confirmação → registro de operações).

Atualizações

  • A verificação de atualizações é automática a cada 6 horas e ao iniciar (também é possível verificar manualmente em Configurações → Sobre → "Verificar atualizações").
  • Quando uma atualização obrigatória é publicada, a tela de atualização exibida na inicialização executa automaticamente download → reinício → aplicação, sem necessidade de clicar em nada.
  • Somente em caso de falha (por exemplo, sem conexão) o download manual pelo navegador é indicado.

Preços e licença

  • Durante os 14 dias após a primeira execução, todos os recursos ficam disponíveis em modo de teste. Não é preciso se cadastrar nem informar dados de pagamento.
  • Mesmo após o vencimento, a visualização dos dados continua gratuita.
  • A compra é feita dentro do app: em ⚙ Configurações → Licença, no canto inferior direito, escolha o plano (Pro / TEAM, mensal / anual) e a página de pagamento do Stripe abrirá no navegador. Assim que o pagamento é concluído, o app ativa a licença automaticamente.
  • Ao migrar para outro Mac, use "Desativar licença" na máquina antiga antes de ativar na nova.

Confira os detalhes dos planos na página de preços.

Perguntas frequentes

Não consigo conectar / aparece "Falha na autenticação"
Confirme se o JSON é a chave da conta de serviço do projeto correto. Se você gerou uma nova chave, o mais seguro é desconectar a conexão antiga e conectar novamente com o novo JSON.
Os dados são enviados para algum lugar?
Não. O Firescope acessa o Firestore diretamente a partir do seu Mac. Nem a chave nem os dados são enviados para nenhum servidor externo.
O que a "proteção de produção" faz exatamente?
É um mecanismo que ajusta automaticamente a intensidade da confirmação de acordo com o rótulo de ambiente da conexão e o risco da operação. Por exemplo, excluir uma coleção em produção só é possível digitando manualmente o ID do projeto. Como a verificação ocorre no núcleo do app (processo principal), e não em um simples aviso na interface, não é algo que se ultrapasse por descuido.
Existe versão para Windows?
Sim. Baixe o Firescope-Setup.exe napágina de download(se aparecer o aviso do SmartScreen, continue com "Mais informações" → "Executar assim mesmo").
É possível adicionar outros idiomas?
Sim. Em Configurações → Idioma, exporte o pacote de idioma (JSON), traduza-o e importe-o de volta para adicionar qualquer idioma.