This repository contains the applications and slides used in the talk named Kotlin, one language to build them all!.
- The slides are available at https://gradle.github.io/imaginate
- The video recording is available at https://youtu.be/88FJwx8Yf3o?t=18545
All notable changes to this project will be documented in the Changelog .
You need the following on all platforms:
JAVA_HOMEenvironment variable pointing to Java >= 17- Android Studio or IntelliJ IDEA
Warning You need macos to write and run ios-specific code on simulated or real devices. This is an Apple requirement. On non-macos systems building ios-specific code is automatically disabled.
On macos you need:
In case of trouble you can use KDoctor.
Run application in a browser
./gradlew :web-app:jsBrowserRun Run application, rebuild on source code changes with live-reload
./gradlew :web-app:jsBrowserRun --continuousBuild "htdocs" in applications/web-app/build/distributions
./gradlew :web-app:jsBrowserProductionWebpackRun application
./gradlew :desktop-app:runRun application, rebuild on source code changes, close the app to trigger rebuild
./gradlew :desktop-app:run --continuousRun the application on a device or emulator
- Open the project in Android Studio >= Giraffe
- Select the
android-apprun target and a device or emulator - Click the run button
Build the APK in applications/android-app/build/outputs/apk/debug
./gradlew :android-app:assembleDebugRun the application on a device or simulator
- Run
./gradlew :ios-app:podInstall - Open
applications/ios-app/iosApp/iosApp.xcworkspacein xcode - Select a simulator or device
- Click the run button
Build "htdocs" in slides/build/docs/asciidocRevealJs
./gradlew :slides:asciidoctorRevealJsBuilds "htdocs" continuously, opens a browser
./gradlew :slides:asciidoctorRevealJs --continuousBuilds PDF
./gradlew :slides:exportPdfNote that building the slides PDF requires a JVM with JavaFX bundled.