Skip to content

Aplicativo Android nativo desenvolvido para a comunidade da Universidade Federal do Ceará (UFC). Facilita a divulgação, localização e interação sobre itens perdidos e encontrados no campus, promovendo colaboração entre estudantes e servidores.

License

Notifications You must be signed in to change notification settings

CristianoMends/achados-ufc

Repository files navigation

Achados UFC - App Android

Badge do Android Badge do Kotlin Badge do Jetpack Compose Badge do Firebase

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 API
YouTube Video

🎯 Sobre o Projeto

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.


✨ Funcionalidades Principais

  • 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.

🛠️ Tecnologias e Arquitetura

  • 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.

🚀 Como Executar o App

Para rodar o aplicativo Android em seu ambiente de desenvolvimento, siga estes passos:

  1. Clone este repositório:

    git clone [https://github.com/CristianoMends/achados-ufc.git](https://github.com/CristianoMends/achados-ufc.git)
    cd achados-ufc
  2. 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.
  3. 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_LOCAL pelo 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.

🖼 Galeria

Tela de Login Feed Detalhes do Item
Screenshot da tela de login Screenshot do feed de itens Screenshot_20250725_113901
Chat em Tempo Real Lista de Conversas Perfil de usuário
Screenshot da tela de chat Screenshot_20250725_115051 Screenshot_20250725_114103

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

About

Aplicativo Android nativo desenvolvido para a comunidade da Universidade Federal do Ceará (UFC). Facilita a divulgação, localização e interação sobre itens perdidos e encontrados no campus, promovendo colaboração entre estudantes e servidores.

Resources

License

Stars

Watchers

Forks

Languages