Skip to content

Latest commit

Β 

History

216 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NYTimes-KMP

Build Kotlin

badge-android badge-wearos badge-desktop badge-ios badge-browser-js badge-browser-wasm badge-windows

A Kotlin Multiplatform sample of the New York Times app with a shared domain (networking, storage, Molecule view models) driving

  1. Compose Multiplatform UIs for Android, Desktop (Linux, macOS, Windows), and Web (JS + WasmJs)
  2. Jetpack Compose for Wear OS, consuming the shared domain and view models
  3. Dual Compose + SwiftUI experience on iOS
  4. WPF + WinUI 3 + MAUI on native Windows via kotlin-native-nuget.

To build and run you will need an API key from the New York Times.

Libraries used

Run instructions

Run configurations available on .idea/runConfigurations for each platform.

run-config.png

platform command
android ./gradlew :app:android:assembleDebug
wear ./gradlew :app:wear:assembleDebug
ios xcodebuild -project app/ios/ios.xcodeproj -scheme NYTimes -configuration Debug
desktop ./gradlew :app:desktop:run
js ./gradlew :app:web:jsBrowserDevelopmentRun
wasm ./gradlew :app:web:wasmJsBrowserDevelopmentRun
windows (WPF) dotnet run --project app\windows\WpfApp\WpfApp.csproj
windows (WinUI) dotnet run --project app\windows\WinUiApp\WinUiApp.csproj
windows (MAUI) dotnet run --project app\windows\MauiApp\MauiApp.csproj

Build details for the WPF, WinUI and MAUI hosts are in app/windows/README.md.

Showcase

Android

Android.mp4

WearOs

WearOs.mp4

iOS

iOS.mp4

Desktop

Desktop.min.mp4

Web (Js & WasmJs)

Web.mp4

Windows (WinUI3 + WPF + MAUI)

nytimes-winui3.mp4

About

A KMP template of the New York Times App for Android, Desktop, iOS, Windows and Web

Topics

Resources

Stars

712 stars

Watchers

8 watching

Forks

Releases

Used by

Contributors

Languages