Oi André, tudo bem?
Primeiramente muito obrigado pelo feedback, fico muito contente que tenha gostado :)
Já que conseguiu o projeto, vou apenas responder sobre suas próximas dúvidas, então vamos lá.
Sobre segurança, esses tipos de aplicações costumam usar mecanismos por meio de tokens, portanto, podemos considerar que esses tokens seriam as famosas sessões de aplicações Web, nas quais identificam um usuário dentro do sistema, ou seja, se um usuário realizar um login por meio de uma comunicação via web service, ele receberá o token e irá armazená-lo, então, nas próximas requisições, sempre terá que mandar o token que o servidor devolveu para identificá-lo e, dessa forma, o servidor vai permitir que a requisição seja realizada.
Nesse instante você deve estar se perguntado algumas possíveis formas de implementar isso, basicamente você poderia fazer com que o seu server tivesse um sistema próprio de token que fizesse algo próximo do que mencionei acima, entretanto, atualmente é muito comum os sistemas usarem o protocolo OAuth, conforme o Matheus mencionou. Os principais motivos de usar o OAuth está relacionado à segurança na qual ele impõe, e também, no fato de permitir que seja possível o acesso via APIs distintas como é o caso de logar com o Facebook, Twitter, Google e etc.
Em outras palavras, você vai precisar pesquisar sobre OAuth e como é possível realizar uma implementação via OAuth. Caso você preferir uma implementação de autenticação mais simples, aconselho dar uma olhada na API Authentication. Porém, é válido lembrar que dependendo do nível de uso dessa API do Firebase, você vai se deparar com o OAuth também.
Espero ter ajudado e qualquer dúvida é só avisar.
Abraços.