Este repositório contém o código-fonte do aplicativo Android. A API backend que o app consome está em um repositório separado.
Achados UFC é um aplicativo nativo para Android, desenvolvido como projeto final da disciplina de Desenvolvimento de Software para Dispositivos Móveis da Universidade Federal do Ceará.
O objetivo é centralizar e simplificar o processo de busca e devolução de itens perdidos dentro do campus, conectando a comunidade acadêmica através de uma plataforma moderna, intuitiva e em tempo real.
- Publicação de Itens: Usuários podem cadastrar itens que encontraram ou perderam, adicionando título, descrição, local e uma foto.
- Chat em Tempo Real: Um sistema de mensagens integrado com Firebase Firestore permite que os usuários conversem diretamente sobre os itens.
- Notificações Inteligentes: Receba notificações no app quando uma nova mensagem chegar.
- Upload Robusto em Segundo Plano: O envio de imagens utiliza o WorkManager, garantindo que o upload seja concluído mesmo com o app fechado ou conexão instável.
- Autenticação Segura: Login com Google e e-mail/senha, integrado com a API backend via JWT.
- Cache Offline: Os dados são armazenados localmente com o Room, permitindo que o app funcione mesmo sem conexão à internet.
- Busca e Filtros: Encontre itens facilmente com uma interface de busca rápida e eficiente.
- Linguagem: 100% Kotlin, seguindo as melhores práticas e coroutines para concorrência.
- Interface Gráfica: Jetpack Compose para uma UI declarativa, moderna e reativa.
- Arquitetura: MVVM (Model-View-ViewModel), garantindo uma clara separação de responsabilidades e facilitando a manutenção.
- Injeção de Dependências: Koin para gerenciar as dependências de forma simples e eficaz.
- Comunicação com API: Retrofit para chamadas de rede seguras e bem estruturadas.
- Persistência de Dados: Room para cache de dados offline.
- Tempo Real e Autenticação: Firebase (Firestore & Auth) para o sistema de chat e autenticação social.
- Tarefas em Segundo Plano: WorkManager para agendar e executar tarefas robustas de upload.
Para rodar o aplicativo Android em seu ambiente de desenvolvimento, siga estes passos:
-
Clone este repositório:
git clone [https://github.com/CristianoMends/achados-ufc.git](https://github.com/CristianoMends/achados-ufc.git) cd achados-ufc -
Configure a API Backend:
- Para o app funcionar, a API do Achados UFC precisa estar rodando. Siga as instruções no repositório dela para configurar e iniciar o servidor.
-
Configure o App Android:
- Abra o projeto na versão mais recente do Android Studio.
- Na raiz do projeto, crie um arquivo chamado
local.properties. - Adicione a URL base da sua API local neste arquivo. Substitua
SEU_IP_LOCALpelo endereço de IP da sua máquina na rede local.BASE_URL="http://SEU_IP_LOCAL:3000/"
- Sincronize o projeto com o Gradle e execute-o em um emulador ou dispositivo físico.
| Tela de Login | Feed | Detalhes do Item |
![]() |
![]() |
![]() |
| Chat em Tempo Real | Lista de Conversas | Perfil de usuário |
![]() |
![]() |
![]() |
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.






