Pular para o conteúdo

Use o seu próprio projeto Firebase

ResumindoCole o arquivo de chave da conta de serviço do Firebase no conector do Firebase, em Backend → Nuvem. O MonstarX confere a chave com o Google e, a partir daí, o seu app pode usar Firestore, login do Firebase, Cloud Storage, notificações push e Realtime Database. Você também pode tornar o Firestore o principal lugar de dados do app e copiar as tabelas que já existem.

O Firebase é o conjunto de serviços para apps do Google: um banco de dados de documentos chamado Firestore, login, armazenamento de arquivos, notificações push e mais. Se você já tem um projeto Firebase — talvez com um app de celular já existente —, pode conectá-lo a um app MonstarX e usar qualquer um desses serviços a partir dele.

Você pode usar o Firebase para uma coisa só (por exemplo, enviar notificações push para os usuários do seu app de celular) ou tornar o Firestore o banco de dados do app, para que o seu app web e os seus outros apps compartilhem os mesmos dados.

  • Um projeto Firebase e acesso às configurações dele no console do Firebase.
  • Para fazer login de pessoas com o Firebase Authentication, um app web adicionado a esse projeto Firebase.
  1. No console do Firebase, abra Configurações do projeto → Contas de serviço e clique em Gerar nova chave privada. Um arquivo JSON é baixado.

  2. No MonstarX, abra o seu projeto e clique em Backend na barra superior e depois em Nuvem.

  3. Em Conectores, clique em Conectar ao lado do Firebase.

  4. Abra o arquivo JSON em um editor de texto, copie todo o conteúdo e cole em Arquivo de chave da conta de serviço. O MonstarX lê o id do seu projeto a partir dele.

  5. Preencha os campos opcionais só se precisar deles:

    • Chave de API web — em Configurações do projeto → Geral → Seus apps → App web → apiKey. Só é necessária para fazer login de pessoas com o Firebase Authentication.
    • Bucket de armazenamento — só se os seus arquivos não estiverem no bucket padrão do projeto.
    • URL do Realtime Database — só para o Realtime Database. O Firestore não precisa de nada aqui.
  6. Clique em Conectar Firebase. O MonstarX confere a chave com o Google antes de salvá-la e mostra o que encontrou ao lado de Conectado — o id do seu projeto e as coleções do Firestore, ou “nenhum banco de dados Firestore ainda”.

Se você colar o arquivo errado — por exemplo, a pequena configuração do app web em vez da chave da conta de serviço —, o MonstarX recusa e diz quais campos estão faltando.

Depois de conectar, peça a funcionalidade com palavras simples, como “envie uma notificação push para os alunos quando uma aula for cancelada”. O MonstarX cria a funcionalidade com o Firebase:

Serviço do FirebaseO que o seu app pode fazer
FirestoreAdicionar, ler, buscar, atualizar e excluir documentos; contá-los
AuthenticationCadastrar pessoas e fazer login, redefinir senhas e gerenciar usuários (precisa da chave de API web)
Cloud StorageEnviar arquivos, obter os links de download, listar e excluir arquivos
Cloud MessagingEnviar notificações push para um dispositivo ou um tópico
Realtime DatabaseLer e gravar dados (precisa da URL do Realtime Database)

Tudo roda no servidor do app, então os visitantes nunca veem a sua chave.

Sim. Todo app começa com o banco de dados do próprio MonstarX, mas você pode fazer do Firestore o lugar onde ele guarda os dados.

  1. Conecte o Firebase antes (veja acima).

  2. Em BackendNuvem, encontre Onde este app armazena seus dados.

  3. Escolha Firestore (seu projeto Firebase). Enquanto o Firebase não estiver conectado, essa opção mostra “conecte o Firebase primeiro” e não pode ser escolhida.

  4. Se o app já tiver dados, clique em Copiar dados existentes para trazê-los e confirme.

A partir daí:

  • O MonstarX cria o app com coleções e documentos em vez de tabelas e olha as suas coleções reais antes de escrever o código — ele nunca inventa campos que os seus dados não têm.
  • BackendBanco de dados mostra as suas Coleções do Firestore e os documentos delas. Ali elas são somente leitura; quem grava é o app.
  • As contas continuam com o MonstarX. As pessoas entram do mesmo jeito de antes, e BackendUsuários funciona como sempre. É por isso que o MonstarX mantém o próprio banco de dados em vez de excluí-lo.

Para voltar, escolha Banco de dados do MonstarX no mesmo lugar. O app volta para o próprio banco de dados exatamente como estava.

  • Cada tabela vira uma coleção com o mesmo nome, e cada linha vira um documento. O id da linha vira o id do documento.
  • Executar de novo atualiza esses documentos em vez de duplicá-los.
  • As quatro tabelas de login ficam no banco de dados do MonstarX, onde ficam as contas.
  • Nada é excluído, em nenhum dos dois lugares.
  • Um app grande pode ser copiado em partes. Se aparecer um aviso de que a cópia parou para manter a solicitação curta, execute de novo e ela continua de onde parou.
  • Firestore ou Supabase, não os dois. Um app guarda os dados em um só lugar. Para ir do Supabase para o Firestore, leve antes os dados de volta ao banco de dados do MonstarX. O conector do Firebase em si continua funcionando ao lado do Supabase para armazenamento, mensagens ou login.
  • Sem SDK do Firebase no app. O MonstarX acessa o Firebase por um recurso embutido que funciona igual na prévia e no app publicado.
  • Notificações push para celulares precisam de um token de dispositivo vindo do seu app de celular; o MonstarX envia para os tokens que o app recebe.
  • Publicar no Google Cloud Run é outro conector: veja Publique em outras hospedagens.
Onde encontro o arquivo de chave da conta de serviço?

No console do Firebase: Configurações do projeto → Contas de serviço → Gerar nova chave privada. Cole o arquivo JSON inteiro em Arquivo de chave da conta de serviço.

Posso usar o Firebase só para notificações push?

Sim. Conectar o Firebase não muda os seus dados de lugar. O app continua usando o banco de dados do MonstarX, a menos que você escolha o Firestore em Onde este app armazena seus dados.

Os meus usuários vão precisar de contas novas se eu mudar para o Firestore?

Não. As contas continuam no banco de dados do MonstarX e o login funciona como antes. Só os dados do próprio app vão para o Firestore.

Aparece “nenhum banco de dados Firestore ainda”. Isso é um problema?

Só se você quiser usar o Firestore. A conexão funciona mesmo assim, porque o app pode precisar só de armazenamento, login ou push. Crie um banco de dados Firestore no console do Firebase para usá-lo.

Copiar os meus dados exclui alguma coisa?

Não. Copiar dados existentes só adiciona ou atualiza documentos no Firestore. O banco de dados do próprio MonstarX fica como está.