I'm looking for good content on the module structure that uses a pair of api/impl modules for each feature (sometimes also called contract/impl, or similar). I've heard from many people working on large modularized apps using the same approach.

Any favourite resources for this?

Ralf Wondratschek

Personal website from Ralf Wondratschek to collect and share presentations, blog-posts and other interesting bits.

Modular indirection is the best direction

Introducing indirection into your modular structure can improve the incremental build times of your android application.

@zsmb13 At Freeletics we split our core and domain modules into api/implementation. Our feature modules are split into implementation/nav. If you are interested, you can read more about it here: https://github.com/freeletics/freeletics-gradle-plugins/blob/main/plugins/monoREADME.md

Here is also a very simple example app as a demo: https://github.com/freeletics/khonshu/tree/main/sample/simple

freeletics-gradle-plugins/plugins/monoREADME.md at main · freeletics/freeletics-gradle-plugins

A collection of convention plugins that are used internally at Freeletics. - freeletics/freeletics-gradle-plugins

GitHub