It is a set of libraries and a CLI tool to make working with Compose-compiler metrics easier. Read the
full documentation here.
If you need to:
- Find
Compose Compiler metricsbyscanninga directory Parsemetricsinto usableKotlin objects- Generate glanceable and digestible
HTML/JSONreports - Be able to do all of this in a
CLIas well?
then Mendable has you covered.
Mendable scans & parses Compose compiler generated metrics files and renders them as beautiful HTML/JSON
reports.Mendable focuses on problematic composable methods, highlighting issues causing parts and filtering out
non-problematic ones. It consolidates reports from multiple modules into a single, well-organized HTML page or a
JSON report, streamlining the workflow of finding/fixing unstable Composables.
The
scan,parse&reportparts ofMendableare published as artifacts atMaven Central. If you are building anytooling/librariesarround Compose Compiler Metrics these capabilities ofMendablecould give you a significant headstart.
Mendable can primarily be used in two different ways:
- As a
CLItool - As a set of library dependencies in your
Kotlin/Javaprojects
repositories {
mavenCentral()
}
dependencies {
implementation("com.jayasuryat.mendable:scanner:0.7.0")
implementation("com.jayasuryat.mendable:parser:0.7.0")
implementation("com.jayasuryat.mendable:mendable:0.7.0")
}Prior to v0.6.0, Mendable was only available as a CLI tool. Since v0.6.0 the underlying components have been
modularised and published to maven central. You can see the full list of
changes here.
Contributions are super welcome! See Contributing Guidelines.
Have any questions or queries, or want to discuss anything? Feel free and start a discussion.
Copyright 2022 Jaya Surya Thotapalli
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
