MCBFC’s dependency footprint is intentionally small. The two critical artifacts areDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/tutosrive/mcbfc/llms.txt
Use this file to discover all available pages before exploring further.
io.noties.markwon:core and io.noties.markwon:recycler at version 4.6.2 — no other third-party libraries are required. All remaining dependencies are standard AndroidX components that most Android projects already include.
Markwon 4.6.2 is the last stable release of the v4 series and is the recommended version for production use. It is published on Maven Central under the group ID
io.noties.markwon and requires no additional repository declarations beyond mavenCentral().Markwon artifacts
build.gradle.kts
io.noties.markwon:core — Provides the Markwon class and its builder, the CommonMark parser (backed by commonmark-java), and the full span-rendering pipeline that converts AST nodes into Android Spanned text. This artifact is required even if you only use the recycler integration.
io.noties.markwon:recycler — Adds MarkwonAdapter (a RecyclerView.Adapter that maps AST nodes to item view types), the MarkwonAdapter.Entry<N, H> base class that BlockCodeEntry extends, and MarkwonAdapter.Holder that BlockCodeEntry.Holder extends. Without this artifact, a RecyclerView-based Markwon renderer is not possible.
AndroidX dependencies
The version catalogue used by the project is shown below in full:libs.versions.toml
androidx.core:core-ktx:1.19.0— Kotlin extensions for core Android APIs (includingContext,View, and system service helpers).androidx.appcompat:appcompat:1.7.1— Backwards-compatibleAppCompatActivityand theme support.com.google.android.material:material:1.14.0— Material Design 3 components and theme attributes, including?attr/actionModeCopyDrawableused byfenced_code_view.xml.androidx.activity:activity:1.13.0—ComponentActivityandOnBackPressedDispatchersupport.androidx.constraintlayout:constraintlayout:2.2.1—ConstraintLayoutused as the root ofactivity_main.xml.androidx.recyclerview:recyclerview:1.4.0— TheRecyclerViewwidget,RecyclerView.Adapter,LinearLayoutManager, andDefaultItemAnimatorclasses that themarkdownwrapper configures.
SDK and toolchain requirements
| Property | Value |
|---|---|
minSdk | 24 (Android 7.0 Nougat) |
targetSdk | 36 |
compileSdk | 37 |
versionName | 1.0 |
| Java source/target | 11 |
| Gradle AGP | 9.1.1 |
| Gradle wrapper | 9.3.1 |
ProGuard / R8
Release builds have both minification and resource shrinking enabled:build.gradle.kts
isMinifyEnabled = true activates R8 code shrinking, which removes unused classes and obfuscates identifiers. isShrinkResources = true strips unreferenced drawable, layout, and string resources from the APK. Any custom keep rules — for example, rules to preserve Markwon’s reflection-based node resolution or the BlockCodeEntry class name — should be added to proguard-rules.pro in the app/ module directory alongside the default AGP rules from proguard-android-optimize.txt.