android-java

Structure Android Java apps with MVVM, ViewBinding, repository pattern, DI, Room, Retrofit, and Espresso tests.

1|Updated Feb 26, 2026
One-click install
npx skills add https://github.com/aberrantCode/llm_skills --skill android-java-aberrantcode
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-java
Source: https://github.com/aberrantCode/llm_skills/tree/main/claude/skills/android-java
Command: npx skills add https://github.com/aberrantCode/llm_skills --skill android-java-aberrantcode

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Android Java architecture and tooling for scalable, maintainable apps using MVVM, ViewBinding, Repository pattern, DI, Room, Retrofit, and Espresso testing.

Core Features & Use Cases

  • MVVM with ViewModel, LiveData, and ViewBinding integration across Activities and Fragments.
  • Domain and Data separation with Repository interfaces and implementations.
  • Data Layer using Room (local) and Retrofit (remote) with sample ApiClient.
  • DI via Hilt/Dagger and @HiltViewModel for dependency wiring.
  • Testing strategies with JUnit, Mockito, and Espresso; CI/CD guidance included.

Quick Start

Open the Android Java Skill to review a complete MVVM architecture example and sample project structure.

Frequently Asked Questions about android-java

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure an Android Java app using MVVM architecture?

To structure an Android Java app with MVVM, separate UI, domain, and data layers using ViewModel, LiveData, and ViewBinding. This ensures clear separation of concerns, testability, and maintainability across Activities and Fragments.

What is the repository pattern in Android and how does it work with Room and Retrofit?

The repository pattern isolates data sources by wrapping Room for local storage and Retrofit for remote requests. It provides a clean API, decoupling the ViewModel from data fetching and persistence logic.

How do I set up dependency injection with Hilt in an Android Java project?

Set up dependency injection in an Android Java project using Hilt or Dagger to wire dependencies. Apply @HiltViewModel to ViewModels and configure modules to provide Room, Retrofit, and repository implementations.

How do I test Android MVVM ViewModels and UI with Espresso?

Test Android MVVM ViewModels and UI by combining JUnit and Mockito for isolated logic tests, and Espresso for UI integration tests. This strategy validates both domain behaviors and user interactions.

Does ViewBinding work with both Activities and Fragments in an MVVM setup?

ViewBinding works with both Activities and Fragments in an MVVM setup to safely access views. It replaces boilerplate findViewById calls, binding layout views directly while observing LiveData from the ViewModel.

What is the best way to organize domain and data layers in an Android app?

The best way to organize domain and data layers is defining repository interfaces in the domain layer. Implementations in the data layer wrap Room and Retrofit, maintaining a comprehensive and maintainable project structure.