🇧🇷 Português 
🇪🇸 Español 
🇬🇧 Inglés 
O Kotlin Canivete Suíço é um aplicativo desenvolvido com Kotlin e Jetpack Compose, projetado para ser um conjunto de ferramentas úteis, utilizando as melhores práticas do desenvolvimento Android. Ele segue os princípios de Clean Architecture e MVVM, garantindo modularidade, testabilidade e escalabilidade.
- Clean Architecture → Organização modular e separação de responsabilidades.
- MVVM (Model-View-ViewModel) → Melhor separação entre UI e lógica de negócios.
- Jetpack Compose → Framework moderno para construção de UI declarativa.
- LiveData → Observabilidade reativa para atualização de UI.
- ViewModel → Gerenciamento do ciclo de vida dos componentes de UI.
- Lifecycle → Manipulação do ciclo de vida dos componentes Android.
- Flow → Programação reativa moderna com suporte a Coroutines.
- Material Components → Interface moderna seguindo o Material Design.
- Navigation Component → Gerenciamento de navegação entre telas.
- Navigation Drawer → Implementação do menu lateral padrão do Android.
- Data Binding → Ligação direta entre componentes de UI e ViewModel.
- Binding → Simplificação da interação entre a UI e os dados.
- Room → Banco de dados local SQLite com ORM nativo.
- DataStore → Substituto moderno do SharedPreferences para armazenamento de pequenas quantidades de dados.
- Cloud Firestore → Banco de dados NoSQL escalável e em tempo real.
- Firebase Authentication → Gerenciamento seguro de usuários.
- Retrofit → Cliente HTTP para chamadas de API de forma eficiente.
- Google Maps → Exibição de mapas interativos.
- Location Services API → Acesso à localização do dispositivo.
- Picasso → Carregamento e cache eficiente de imagens.
- Mockito → Mocking de dependências para testes unitários.
- JUnit → Testes unitários para lógica de negócios.
- Espresso → Testes instrumentados para UI.
- Hilt → Gerenciamento de dependências simplificado e eficiente.
O projeto segue o padrão de Clean Architecture, dividido em:
- Domain → Regras de negócio e casos de uso.
- Data → Repositórios e manipulação de dados.
- Presentation → Camada de UI e ViewModels.
- Clone o repositório:
git clone https://github.com/seu-usuario/kotlin-canivete-suico.git
- Abra no Android Studio (versão mais recente recomendada).
- Configure uma conta no Firebase e adicione o arquivo
google-services.json
. - Compile e execute no emulador ou dispositivo físico.
Contribuições são bem-vindas! Fique à vontade para abrir issues ou enviar pull requests.
Este projeto está licenciado sob a Licença MIT.
El Kotlin Cuchillo Suizo es una aplicación desarrollada con Kotlin y Jetpack Compose, diseñada para ser un conjunto de herramientas útiles, utilizando las mejores prácticas del desarrollo Android. Sigue los principios de Clean Architecture y MVVM, garantizando modularidad, capacidad de prueba y escalabilidad.
- Clean Architecture → Organización modular y separación de responsabilidades.
- MVVM (Model-View-ViewModel) → Mejor separación entre la UI y la lógica de negocio.
- Jetpack Compose → Framework moderno para la construcción de UI declarativa.
- LiveData → Observabilidad reactiva para la actualización de la UI.
- ViewModel → Gestión del ciclo de vida de los componentes de la UI.
- Lifecycle → Manipulación del ciclo de vida de los componentes de Android.
- Flow → Programación reactiva moderna con soporte para Coroutines.
- Material Components → Interfaz moderna siguiendo el diseño Material Design.
- Navigation Component → Gestión de navegación entre pantallas.
- Navigation Drawer → Implementación del menú lateral estándar de Android.
- Data Binding → Vínculo directo entre componentes de UI y ViewModel.
- Binding → Simplificación de la interacción entre la UI y los datos.
- Room → Base de datos local SQLite con ORM nativo.
- DataStore → Reemplazo moderno de SharedPreferences para el almacenamiento de pequeñas cantidades de datos.
- Cloud Firestore → Base de datos NoSQL escalable y en tiempo real.
- Firebase Authentication → Gestión segura de usuarios.
- Retrofit → Cliente HTTP para llamadas a API de manera eficiente.
- Google Maps → Visualización de mapas interactivos.
- Location Services API → Acceso a la ubicación del dispositivo.
- Picasso → Carga y almacenamiento en caché eficiente de imágenes.
- Mockito → Simulación de dependencias para pruebas unitarias.
- JUnit → Pruebas unitarias para la lógica de negocio.
- Espresso → Pruebas instrumentadas para la UI.
- Hilt → Gestión de dependencias simplificada y eficiente.
El proyecto sigue el patrón de Clean Architecture, dividido en:
- Domain → Reglas de negocio y casos de uso.
- Data → Repositorios y manipulación de datos.
- Presentation → Capa de UI y ViewModels.
- Clona el repositorio:
git clone https://github.com/seu-usuario/kotlin-canivete-suico.git
- Ábrelo en Android Studio (se recomienda la versión más reciente).
- Configura una cuenta en Firebase y agrega el archivo
google-services.json
. - Compila y ejecuta en un emulador o dispositivo físico.
Las contribuciones son bienvenidas. No dudes en abrir issues o enviar pull requests.
Este proyecto está licenciado bajo la Licencia MIT.
The Kotlin Swiss Knife is an application developed with Kotlin and Jetpack Compose, designed to be a set of useful tools, utilizing the best practices in Android development. It follows the principles of Clean Architecture and MVVM, ensuring modularity, testability, and scalability.
- Clean Architecture → Modular organization and separation of responsibilities.
- MVVM (Model-View-ViewModel) → Better separation between UI and business logic.
- Jetpack Compose → Modern framework for declarative UI construction.
- LiveData → Reactive observability for UI updates.
- ViewModel → Lifecycle management of UI components.
- Lifecycle → Handling of Android component lifecycle.
- Flow → Modern reactive programming with Coroutines support.
- Material Components → Modern interface following Material Design.
- Navigation Component → Navigation management between screens.
- Navigation Drawer → Implementation of the standard Android side menu.
- Data Binding → Direct link between UI components and ViewModel.
- Binding → Simplification of UI and data interaction.
- Room → Local SQLite database with native ORM.
- DataStore → Modern replacement for SharedPreferences for storing small amounts of data.
- Cloud Firestore → Scalable and real-time NoSQL database.
- Firebase Authentication → Secure user management.
- Retrofit → HTTP client for efficient API calls.
- Google Maps → Interactive map visualization.
- Location Services API → Access to device location.
- Picasso → Efficient image loading and caching.
- Mockito → Dependency mocking for unit testing.
- JUnit → Unit testing for business logic.
- Espresso → Instrumented UI testing.
- Hilt → Simplified and efficient dependency management.
The project follows the Clean Architecture pattern, divided into:
- Domain → Business rules and use cases.
- Data → Repositories and data handling.
- Presentation → UI layer and ViewModels.
- Clone the repository:
git clone https://github.com/seu-usuario/kotlin-canivete-suico.git
- Open it in Android Studio (latest version recommended).
- Set up a Firebase account and add the
google-services.json
file. - Compile and run on an emulator or physical device.
Contributions are welcome! Feel free to open issues or submit pull requests.
This project is licensed under the MIT License.