Skip to content
Back to skills

Kotlin Android Development

ASecurity

Use when building Android apps with Kotlin.

  • 2 stars
  • 0 votes
  • 0 copies
  • 10 views
  • Added September 10, 2026
developmentgoswiftkotlinreacttestingdatabasefrontend

Security analysis

A100/100

Scanned September 10, 2026

npx -y skills add LoopyLuci/Skills --skill kotlin-android-development --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Kotlin Android Development?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Kotlin Android Development
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/loopyluci-kotlin-android-development/badge)](https://www.skillsdirectory.com/skills/loopyluci-kotlin-android-development)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: kotlin-android-development
description: "Use when building Android apps with Kotlin."
version: 1.0.0
author: Hermes Agent
license: MIT
metadata:
  hermes:
    tags: [Kotlin, Android, Jetpack-Compose, coroutines, MVVM, Room]
    related_skills: [flutter-mobile-development, react-native-patterns, swiftui-ios-development, frontend-bootstrap]
---

# Kotlin Android Development

Building Android apps with Kotlin — from Jetpack Compose and coroutines through MVVM architecture, Room database, and Play Store deployment.

## When to Use

- Building native Android applications
- Modern UI with Jetpack Compose
- Reactive UIs with StateFlow and coroutines
- Offline-first with Room database

## Kotlin Android Patterns

```kotlin
// MVVM with Jetpack Compose
class MainViewModel : ViewModel() {
    private val _users = MutableStateFlow<List<User>>(emptyList())
    val users: StateFlow<List<User>> = _users.asStateFlow()
    
    init { viewModelScope.launch { loadUsers() } }
    
    fun loadUsers() {
        viewModelScope.launch {
            _users.value = repository.getUsers()
        }
    }
}

@Composable
fun UserListScreen(viewModel: MainViewModel) {
    val users by viewModel.users.collectAsState()
    
    LazyColumn {
        items(users) { user ->
            UserCard(user = user)
        }
    }
}

// Room database
@Entity
data class User(
    @PrimaryKey val id: String,
    val name: String,
    val email: String
)

@Dao
interface UserDao {
    @Query("SELECT * FROM user")
    suspend fun getAll(): List<User>
}
```

## Verification Checklist

- [ ] Architecture chosen (MVVM, MVI, or Clean Architecture)
- [ ] UI built with Jetpack Compose
- [ ] Navigation Component for screen routing
- [ ] Room database for local persistence
- [ ] Coroutines + Flow for async operations
- [ ] Dependency injection (Hilt or Koin)
- [ ] Retrofit/Ktor for networking
- [ ] Testing (JUnit, Compose UI tests, MockK)
- [ ] Google Play deployment checklist ready

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.