Rebuilding legacy Android appsin modern Kotlin.

Breathing new life into open-source projects with Jetpack Compose, thoughtful architectures, and visual redesigns.

Modernized Android app preview apps

Case Studies

Each app follows a different modernization path.

Markor is a Java to KMP migration. RethinkDNS is a full redesign with a Compose port. NetGuard is a Java to Kotlin migration with Compose.

02

RethinkDNS

03

NetGuard

EX

Library

Diagonal Wipe Icon

A single-file icon transition component for Compose Multiplatform. Built to emulate iOS-style wipe animations using two icons and a mask.

Diagonal Wipe Icon Animation
Next Candidate

Calculator++

Compose redesign is in final polish and scheduled to ship in the next few days.

Compose UIScientific WorkflowHistoryMaterial 3
View current project
Next Candidate

ChangeDetection

Planned Kotlin modernization focused on reliable polling, cleaner state updates, and improved readability.

Kotlin PortCompose UICoroutinesMaterial 3
View current project

Approach

A repeatable modernization process.

Every project follows the same disciplined arc — preserve what works, rebuild what doesn't, polish the surface.

Port carefully

Move critical Java surfaces to Kotlin without breaking project identity.

Improve structure

Refactor weak boundaries, state management, and async behavior where it matters.

Modernize experience

Upgrade interaction patterns and visual language with pragmatic Material 3 updates.

Open Collaboration

Help choose the next legacy app to modernize.

Suggest an open-source Android project you'd like to see rebuilt in modern Kotlin. The most compelling ideas get queued up next.