--required-deps command displays the Gradle dependencies required for Lumo UI components to work in your project.
Syntax
What It Does
The command:- Reads your
lumo.propertiesconfiguration - Checks if you’re using Kotlin Multiplatform
- Displays the appropriate dependency list for your project type
- Formats dependencies ready to copy into
build.gradle.kts
Output for Android Projects
For standard Android projects (KotlinMultiplatform=false or not set):
Output for Kotlin Multiplatform Projects
For Kotlin Multiplatform projects (KotlinMultiplatform=true):
Current Versions
The plugin uses these dependency versions:2024.12.01 - For Android projects
1.7.6 - For Android projects
Uses the versions configured in your KMP project
Adding Dependencies to Your Project
Android Project
Add the dependencies to your app module’sbuild.gradle.kts:
build.gradle.kts
Kotlin Multiplatform Project
Add to your shared module’sbuild.gradle.kts:
build.gradle.kts
For Kotlin Multiplatform, ensure you have the Compose Multiplatform plugin configured in your project.
Prerequisites
You must run./gradlew lumo --init before using this command.
When to Use
Use this command:- During initial setup - After running
--init, before--setup - When dependencies change - If plugin updates require new dependencies
- For new team members - To quickly see required dependencies
- When troubleshooting - To verify you have all required dependencies
Why api Configuration?
The plugin uses api instead of implementation because:
Generated components need to expose Compose types
Your app code will use Compose APIs from generated components
Ensures dependency transitivity for proper compilation
Dependency Details
Compose BOM (Bill of Materials)
Compose BOM (Bill of Materials)
The When you use the BOM, you don’t need to specify versions for individual Compose libraries.
compose-bom manages versions of all Compose libraries, ensuring compatibility.Foundation Libraries
Foundation Libraries
Core Compose functionality:
foundation- Basic building blocksfoundation-layout- Layout components (Column, Row, Box, etc.)
UI Libraries
UI Libraries
UI rendering and tooling:
ui- Core UI primitivesui-tooling- Preview and inspection toolsui-tooling-preview- Preview annotationsui-util- Utility functions
Material Ripple
Material Ripple
Provides ripple effects for Material Design components:Required for interactive components like buttons and cards.
Error Cases
Verification
After adding dependencies, verify they’re properly configured:Updating Dependencies
The Lumo plugin specifies dependency versions. To use different versions:- Check compatibility - Ensure your versions are compatible with Lumo components
- Update build.gradle.kts - Change version numbers after copying
- Test thoroughly - Verify components still work correctly
Alternative Configurations
You can also useimplementation if your project structure allows:
Next Steps
After adding dependencies:- Sync your project - Let Gradle download the dependencies
- Run setup - Use
./gradlew lumo --setupto generate theme - Add components - Start adding UI components with
--addor--add-all