Athena: desenvolvendo um app mobile pelo celular, com Flutter e muitos tropeços no caminho
Há pouco tempo eu falei aqui sobre o Athena, um aplicativo que estou construindo para organizar dados de estudo, sono, humor, localização e rotina acadêmica em geral.
Agora resolvi trazer uma atualização mais honesta sobre como essa jornada tem sido até aqui.
Estou desenvolvendo tudo em um Samsung A25, usando o navegador do celular e o GitHub Codespaces, porque no momento não tenho computador. Isso, por si só, já muda bastante a experiência. Não é o cenário ideal para desenvolver um app Flutter, mas tem me obrigado a entender o projeto com mais cuidado e a pensar melhor na arquitetura antes de sair codando qualquer coisa.
E eu também preciso ser transparente em outro ponto: eu ainda não tenho muita experiência com Flutter.
Então o processo tem sido uma mistura de estudo, tentativa, erro, refatoração e bugs que aparecem nos momentos mais improváveis. Às vezes uma tela que parecia simples quebra por causa de um detalhe da árvore de navegação. Às vezes o banco local exige uma decisão melhor do que a que eu imaginava. Às vezes o problema nem está no código em si, mas na forma como eu pensei a estrutura.
No fim, isso tem tornado o projeto mais interessante do que eu esperava.
O Athena não está sendo tratado como um app pequeno de produtividade. Ele está sendo pensado como uma base de dados pessoal, com foco em evolução de longo prazo. A estrutura já foi desenhada para suportar mudanças futuras sem perder histórico. Já existem documentos de apoio, como planejamento, especificação técnica, DER e wireframes, justamente para evitar que o projeto vire uma sequência de improvisos.
A parte mais desafiadora até agora tem sido equilibrar três coisas ao mesmo tempo:
- aprender Flutter na prática;
- manter o projeto organizado;
- não deixar a limitação de estar no celular virar uma desculpa para fazer algo mal planejado.
Isso também explica por que o projeto está tão voltado para arquitetura desde o começo. Quando se tem pouco espaço para errar, a documentação passa a valer muito mais.
A ideia do Athena continua a mesma: criar um aplicativo local, com dados exportáveis, que permita ao estudante registrar sua rotina sem ficar preso a um sistema fechado. O usuário deve ser dono dos próprios dados. Essa é a base de tudo.
Se alguém estiver acompanhando esse tipo de construção, principalmente com mais experiência em Flutter, eu vou considerar qualquer observação técnica com muito valor. O projeto ainda está no início, então qualquer olhar mais experiente pode fazer diferença na qualidade da base.
O repositório está aberto e a evolução vai continuar acontecendo em público, passo a passo.