AGPL v3

Installation

ISO8583Studio is a Kotlin Multiplatform / Compose Desktop app. Windows and macOS get native installers that bundle their own Java runtime; Linux builds from source with one Gradle command. One codebase, no runtime to install for the packaged builds.

Installersv1.0.0 · Windows · macOSLinuxbuild from sourceTo buildJDK 17+
WindowsDownload the .exe installer and run it — the Java runtime is bundled. Windows 10+.
macOSDownload the .dmg and drag to Applications. Gatekeeper asks once on first launch. macOS 10.14+.
LinuxNo prebuilt package yet: install JDK 17+, clone, and build a .deb with one Gradle task. Ubuntu 18.04+.
Table of contents
01

Prerequisites

RequirementMinimumNotes
JavaNone for the installers · JDK 17+ to buildThe .exe and .dmg bundle a runtime. Building from source needs JDK 17 or newer — Compose Multiplatform 1.8 will not configure on anything older. Temurin, OpenJDK or Oracle all work.
Operating SystemWindows 10+, macOS 10.14+, Ubuntu 18.04+Any modern 64-bit desktop OS.
Memory512 MB2 GB recommended for load testing.
Disk100 MBPlus space for logs and configurations.

Building from source? Check the JDK first:

check the JDK
java -version# openjdk version "17.0.x" — 17 or newer is required to build
02

Windows

  1. Download the installer — ISO8583Studio-1.0.0.exe (about 190 MB; the runtime is included).
  2. Run it — the build is not yet code-signed, so SmartScreen will show Windows protected your PC. Choose More info → Run anyway.
  3. Allow networking — approve the Windows Firewall prompt so simulators can open server ports.
03

macOS

  1. Download the disk image — ISO8583Studio-1.0.0.dmg (about 200 MB; the runtime is included).
  2. Install — open the image and drag ISO8583Studio to Applications.
  3. Gatekeeper — the build is not yet notarized, so the first launch is blocked. Allow it under System Settings → Privacy & Security, or right-click the app and choose Open.
04

Linux

  1. Install a JDK 17+ — Debian/Ubuntu: sudo apt install openjdk-17-jdk git · Fedora: sudo dnf install java-17-openjdk-devel git.
  2. Build it — there is no prebuilt Linux package yet. Clone the repository and run ./gradlew :composeApp:packageDeb for a .deb, or ./gradlew run to launch it directly — see Build from Source below.
  3. Install the package — sudo dpkg -i composeApp/build/compose/binaries/main/deb/*.deb.
05

Build from Source (Kotlin Multiplatform)

The project builds with the Gradle wrapper — no IDE required. You need JDK 17 or newer and Git; Compose Multiplatform 1.8 refuses older JDKs, and the native-installer tasks use jpackage, which arrived in JDK 14.

clone, build, run
git clone https://github.com/hpkaushik121/Iso8583studio.gitcd Iso8583studio./gradlew build     # compile + tests./gradlew run       # launch the desktop app

Building the JAR

To produce a runnable JAR from the cloned source (it needs a JDK 17+ to run), use the Compose Desktop packaging tasks:

package the JAR
# fat/uber JAR with all dependencies (recommended)./gradlew :composeApp:packageUberJarForCurrentOS# output: composeApp/build/compose/jars/ISO8583Studio-<os>-<arch>-1.0.14.jar# run itjava -jar composeApp/build/compose/jars/ISO8583Studio-*.jar

Or build a native installer for your OS instead of a JAR:

package a native installer
./gradlew :composeApp:packageDistributionForCurrentOS# output: composeApp/build/compose/binaries/main/#   Windows → .msi · macOS → .dmg · Linux → .deb
Tip
On Windows use gradlew.bat instead of ./gradlew. For development, IntelliJ IDEA opens the project directly — see How to Contribute.
06

Change the package

Packaging is declared in composeApp/build.gradle.kts, in the nativeDistributions block of compose.desktop.application.

  • packageName and packageVersion: installer name and version; macOS reuses the version for dmgPackageVersion.
  • targetFormats(…): currently Dmg, Msi, Deb and Exe. Add or drop formats here.
  • Icons:composeApp/resources/windows/app.ico, resources/mac/app.icns and resources/linux/app.png.
  • macOS signing:sign is set to false. Set it to true and supply a Developer ID identity to ship a signed build.
07

Troubleshooting

SymptomFix
UnsupportedClassVersionError when running a source buildYour JDK is older than 17 — install a newer one and re-check java -version.
Gradle fails to configureSame cause: Compose Multiplatform 1.8 requires JDK 17+.
"Connection refused" in simulatorsPort in use or blocked by firewall — change the port in Transmission Settings.
08

Next steps