Este projeto é um aplicativo Android e IOS desenvolvido com Kotlin, utilizando Jetpack Compose para a interface do usuário e Voyager para navegação e outras bibliotecas. O projeto também faz uso de várias bibliotecas populares para funcionalidades adicionais.
- Kotlin: Linguagem principal do projeto.
- Jetpack Compose: Framework para construção de interfaces de usuário declarativas.
- Voyager: Biblioteca de navegação para Compose.
- Koin: Injeção de dependência.
- Ktor: Cliente HTTP.
- Coil: Carregamento de imagens.
- JUnit: Testes unitários.
- Coroutines: Programação assíncrona.
- FileKit: Manipulação de arquivos.
- PermissionsGallery: Gerenciamento de permissões.
- Constraint Layout: Layouts complexos.
- Compottie: Animações Lottie.
- AndroidX SplashScreen: Tela de splash.
- Moko Permissions: Para pegar permissões dentro do app.
/composeApp
: Código compartilhado entre as aplicações Compose Multiplatform.commonMain
: Código comum a todos os alvos.- Outras pastas: Código Kotlin compilado apenas para a plataforma indicada no nome da pasta.
/iosApp
: Contém aplicativos iOS e código SwiftUI.gradle/libs.versions.toml
: Arquivo de configuração das versões das dependências.
src/commonMain/kotlin/org/app/marcelodev/comucarona/
Utilitários e funções compartilhadas
- Extensões
- Funções auxiliares
- Classes base
Componentes UI reutilizáveis
- Botões customizados
- Campos de texto
- Diálogos
- Cards
Injeção de dependência
- Módulos Koin
- Providers
- Configurações de DI
Funcionalidades do aplicativo
- Telas
- ViewModels
- Estados
- Casos de uso
Serviços e integrações
- Chamadas de API
- Armazenamento local
- Gerenciamento de dados
Definições visuais
- Cores
- Tipografia
- Dimensões
- Estilos
composeApp/
└── src/
└── commonMain/
└── kotlin/
└── org/
└── app/
└── marcelodev/
└── comucarona/
├── App.kt
├── Greeting.kt
├── Platform.kt
├── commons/
├── components/
├── di/
├── feature/
├── service/
└── theme/
As principais dependências do projeto estão listadas no arquivo gradle/libs.versions.toml
. Aqui estão algumas delas:
filekit
:0.10.0-beta01
junit
:4.13.2
kotlin
:2.1.0
permissionsGallery
:0.19.1
voyagerVersion
:1.1.0-beta03
koin
:4.0.2
ktor
:3.1.1
coroutines
:1.9.0
constraint_layout
:0.5.1
coil
:3.0.4
compottie
:2.0.0-rc04
androidx-splashscreen
:1.0.1
-
Clone o repositório:
git clone <URL_DO_REPOSITORIO>
-
Abra o projeto no JetBrains Fleet:
- Certifique-se de ter o JetBrains Fleet instalado.
-
Sincronize o projeto com o Gradle:
- O Android Studio deve sincronizar automaticamente, mas você pode forçar a sincronização clicando em
File > Sync Project with Gradle Files
.
- O Android Studio deve sincronizar automaticamente, mas você pode forçar a sincronização clicando em
- Conecte um dispositivo ou inicie um emulador.
- Execute o aplicativo:
- Clique no botão
Run
ou use o atalhoShift + F10
.
- Clique no botão
- Fork o repositório.
- Crie uma branch para sua feature:
git checkout -b minha-feature
- Commit suas mudanças:
git commit -m 'Adiciona minha feature'
- Push para a branch:
git push origin minha-feature
- Abra um Pull Request.
Este é um projeto Kotlin Multiplatform direcionado para Android e iOS.