Introdução
Durante anos, quem queria usar só software livre no telemóvel enfrentava um problema: as lojas de aplicações e muitas apps nativas dependem de ecossistemas fechados. As Progressive Web Apps (PWAs) podem ser uma saída, porque correm no navegador, instalam-se no ecrã inicial e funcionam em qualquer sistema.
O que é uma PWA?
Uma PWA é um site que se comporta como uma aplicação. Com um manifest e um service worker, pode ser instalada, funcionar offline, receber notificações e abrir em ecrã inteiro, sem passar por nenhuma loja.
Porque é que as PWAs combinam com o FOSS
1. Neutralidade de fornecedor. Numa discussão no fórum Level1Techs, um dos argumentos a favor era que as PWAs são neutras em relação ao fabricante, ao contrário das antigas Chrome Apps. Há PWAs para muito software e serviços que respeitam a privacidade, como o cliente web do Mastodon, o Element (Matrix) e o Telegram. level1techs
2. Uma só base de código. Projetos pequenos não têm de manter versões separadas para Android, iOS e desktop. Um exemplo é o Nemmy, um cliente para o Lemmy (a alternativa federada ao Reddit), que se apresenta como PWA e promete ser sempre 100% open source e gratuito. github
3. Menos dependência da Google. Um utilizador da comunidade IodéOS defendeu que, para quem quer reduzir a dependência da Google, as PWAs são a opção mais fácil de adotar, sobretudo onde não existe uma app FOSS dedicada. Também apontou uma vantagem de privacidade: ao fechar o separador, a aplicação deixa totalmente de rodar. iodeiode
4. Sem barreiras de distribuição. Não há conta de programador paga, nem aprovação de loja, nem comissões. Publicas, e quem quiser usa.
Os desafios
Nem tudo é positivo, e a comunidade FOSS é a primeira a dizer isso.
- Peso e desempenho. Houve quem criticasse que a web em geral ficou pesada, e que numa app nativa pelo menos existe a possibilidade de otimizar, o que nas PWAs parece menos provável. level1techs
- Descoberta. Onde se encontram boas PWAs livres? Na discussão do F-Droid surgiu a ideia de criar algo parecido com os repositórios das distribuições Linux, exigindo que as apps venham com o código-fonte, para evitar a brecha do SaaSS (Service as a Software Substitute). f-droid
- Verificação de licença. Na mesma discussão, os responsáveis levantaram a dúvida de como o F-Droid poderia verificar se uma PWA é software livre, e se faria sentido integrar um navegador. f-droid
- O servidor continua a ser o problema. Uma PWA com frontend aberto, mas ligada a um backend proprietário, não é liberdade real. O FOSS tem de olhar também para o lado do servidor, com projetos auto-hospedáveis e federados (Mastodon, Matrix, Lemmy, Nextcloud).
- Suporte desigual entre navegadores. A experiência varia consoante o navegador e o sistema, e a comunidade quer que mais navegadores livres apoiem bem as PWAs.
O que falta para o futuro acontecer
- Catálogos de PWAs livres, com licença verificada e código-fonte visível, ao estilo do F-Droid.
- Melhor suporte nos navegadores livres, como o Firefox, para instalação e funcionalidades offline.
- Cultura de auto-hospedagem: PWAs que qualquer pessoa possa instalar no seu próprio servidor.
- Mais divulgação. Como disse o utilizador da Iodé, a comunidade FOSS devia promover mais as PWAs, porque juntos formam uma fonte de marketing que muitos serviços gostariam de ter do seu lado. iode
Conclusão
As PWAs não vão substituir todas as apps nativas, e ninguém deve fingir o contrário. Mas para o FOSS têm vantagens claras: são abertas por natureza, multiplataforma, fáceis de distribuir e libertam o utilizador das lojas controladas por grandes empresas. Se a comunidade resolver a descoberta, a verificação de licenças e a questão do backend, as PWAs podem ser um dos caminhos mais práticos para o software livre chegar ao grande público.
O futuro do FOSS não será só PWA, mas dificilmente será sem elas.
Comentários