Skip to content

pablichjenkov/macao-sdk

Repository files navigation

Macao SDK

A set of prefabricated components and platform API plug-ins to speedup the Compose Multiplatform Application development process. The toolkit contains a variety of customizable navigation components such as Drawer, BottomNavigation, Pager, Panel, Topbar, Stack and many more. It also includes some predefined screens flows such as Authentication, Settings, Commerce and some Data Collection screens. All them customizable from the server application.
On the plug-in side it already has multiplatform implementations for GlobalBackPressDispatcher, PlatformLifecycle, Firebase, Notifications and many more to come.
Code is 99% reusable and available in all platforms.

-One image is worth a thousand words

macao-sdk-arch macao-component-diagram

How to use it?

Check the Developers Guide in the component-toolkit module. Soon the macao-sdk-di-koin module will have its own guide.

Artifacts are published on Maven Central:

val commonMain by getting {
    dependencies {
        // The basic components and plugins API. Use it if you have an
        // application architecture already and you just want to use some plugin implementations.
        implementation("io.github.pablichjenkov:component-toolkit:0.6.0")

        // A full compose application architecture package with Koin as dependency injection
        // container. It also has an application class with delegates to set the desired plugins.
        implementation("io.github.pablichjenkov:macao-sdk-di-koin:0.6.0")
    }
}

Contributions

We welcome contributions from the community! If you have ideas for new features, bug fixes, or improvements, please open an issue or submit a pull request.

Built with component-toolkit

Component Toolkit Demo App

This is the App used to demo and test while developing components.

Android iOS
android-component-demo ios-component-demo
Deep Linking
desktop-deep-link-demo
Deep Linking + Request/Result between Components
desktop-deep-link-demo
Adaptive Layout
desktop-adaptive-component-demo
Web Browser
web-component-demo

Hotel Booking App

Hotel Booking An App that consumes Amadeus Self Sevice API. The Amadeus Self Sevice API is the company's public service to test the Hotel and Flight booking in their platform.

Android iOS
Web