O aplicativo oficial pode ser encontrado na PlayStore.
Acessar o portal para ver se algum professor mudou algo era muito chato, eu criei este aplicativo para automatizar esta tarefa.
O UNES é um aplicativo feito para notificar o estudante quando um professor posta uma nota ou um recado no Portal Sagres. Com o tempo, ele se tornou um pouco mais que isso, mas notificações e acesso offline às informações do portal continuam sendo as funções principais do aplicativo.
Contribuições para o projeto são muito bem vindas e qualquer dúvida, erro, sugestão de feature ou melhoria de código basta colocar nas issues e tento resolver :v
Você pode encontrar o UNES v0.0.1-alpha0 neste repositório. Até onde sei, ele precisa de uma atualização nas constantes, mas ainda deve executar bem.
Este repositório é a parte cliente do UNES — um monorepo poliglota que reúne os apps nativos, a landing page e a lógica compartilhada. O backend mora num repositório privado separado.
apps/ios— App nativo iOS (Swift + SwiftUI).apps/android— App nativo Android (Kotlin + Jetpack Compose).apps/landing— Landing page (Astro, publicada no Cloudflare Pages).packages/shared-kmp— Lógica de negócio compartilhada via Kotlin Multiplatform, empacotada como XCFramework para iOS e como biblioteca para Android.build-logic/— Convention plugins do Gradle usados pelos projetos JVM.
misegerencia versões de ferramentas (bun,gradle,java,license-plist). Rodemise installuma vez.bun installpara dependências Node (usamosbun, nãonpm/yarn/pnpm)../gradlewpara o lado JVM/Android; o composite build do Gradle integrabuild-logic/epackages/shared-kmp/.- iOS é um projeto Xcode padrão (
apps/ios). O build script do Xcode já reconstrói o XCFramework do umbrella KMP automaticamente como parte do build do app — não precisa rodar nenhum passo manual antes. oxlintpara lint eoxfmtpara formatação. Usebun run fixpara aplicar ambos.
Para um guia detalhado sobre como compilar o aplicativo e testar você mesmo, visite o guia de contribuição.
O UNES começou como um app Android nativo em Kotlin com Material Design e foi crescendo até virar este monorepo cross-platform. A interface Android usa Jetpack Compose, a iOS usa SwiftUI, e a lógica que faz sentido compartilhar (banco de dados, rede, features de domínio) vive em packages/shared-kmp via Kotlin Multiplatform.
A comunicação original com o Portal Sagres foi separada para o Juice, publicado no Maven e usado como dependência. O Juice não depende do framework Android, então você pode executá-lo em qualquer projeto Java/Kotlin.
Apesar do foco do aplicativo ser a Universidade Estadual de Feira de Santana (UEFS), se você quiser fazer um port para a sua universidade ou faculdade, sinta-se em casa. Para adicionar suporte a outras universidades/faculdades basta adicionar os endereços base nas constantes do aplicativo.
Este aplicativo não é licenciado nem tem qualquer ligação com a Tecnotrends, a empresa que mantém o website e o serviço Sagres da UEFS. O aplicativo filtra as informações disponibilizadas pelo portal do estudante e então exibe no aplicativo.
Me mande um email joaopaulo761@gmail.com, ou me encontre no LinkedIn ou Instagram.
Veja LICENSE.
