~/questoes/programacao
O Firebase Hosting espera encontrar os arquivos do seu site em um local específico: a pasta 'public'. Esta pasta é criada automaticamente quando você inicializa o Firebase no seu projeto e funciona como o diretório raiz que será publicado na internet.
A pasta 'public' é o diretório padrão do Firebase Hosting. Quando você executa 'firebase init', o Firebase CLI cria automaticamente essa pasta, e todos os arquivos estáticos (HTML, CSS, JavaScript, imagens) devem ser organizados dentro dela para serem servidos corretamente.
Arquivos não precisam estar no Google Cloud antes do deploy. O Firebase CLI envia os arquivos diretamente do seu computador para o Firebase Hosting durante o comando 'firebase deploy'. Você trabalha localmente até estar pronto.
Correto. A pasta 'public' é criada automaticamente pelo Firebase CLI e é exatamente onde seus arquivos estáticos devem estar. O Firebase Hosting servira o conteúdo dessa pasta quando o site for acessado.
A pasta 'assets' não é um padrão do Firebase. Embora você possa criar uma pasta assim dentro de 'public' para organizar arquivos, a estrutura principal deve estar em 'public', não em uma pasta 'assets' isolada no diretório do Node.js.
Os arquivos não devem ficar na pasta raiz do computador. Eles precisam estar dentro da pasta 'public' que o Firebase criou. Colocar arquivos fora dessa estrutura fará com que o Firebase Hosting não encontre ou não publique seu conteúdo corretamente.