Descobri o Kivy uns meses atrás e vejo como uma ótima opção.
Sobre a linguagem...Quando ė feito em Python é gambiarra, mas se for feito exatamente igual em outra linguagem nao é gambiarra? Qual a lógica? Escalabilidade? Não faltam exemplos de empresas antigas e novas escalando com Python e com muita qualidade.
Enquanto isso Python vem crescendo FORTEMENTE como a linguagem de propósito geral mais utilizada no mundo, goste você ou não da linguagem.
Muito bem colocado. Agora vejamos a realidade: as porções críticas (em termos de desempenho) do código fonte do Kivy foram escritas em C.
Qual a relevância disso? Simples. Se você está escrevendo código Python, nada te impede de escrever uma função em Java, outra em C++, e outra em Rust, SE NECESSÁRIO.
Na prática? Nunca precisei escrever nada além de Python e Java. Você vai precisar saber um pouco de Java se for acessar algumas coisas específicas do Android.
Eu costumo usar o Pydantic o pra criar esquemas / modelos / validações etc. A biblioteca pydantic-core é escrita em Rust, e nós acessamos as funções a partir do Python. Ou seja, temos o melhor dos dois mundos!
Essa é uma das chaves do sucesso do Python. A facilidade de usar outras linguagens quando necessário. Isso te entrega velocidade de desenvolvimento de código maior e o desempenho em tempo de execução que você precisar.