Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion epa/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import java.net.InetAddress

plugins {
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.kotlin.dataframe)
alias(libs.plugins.kotlin.serialization)
application
kotlin("plugin.dataframe") version "2.4.20"
}

application {
Expand Down
5 changes: 3 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ csv-jvm = "1.10.0"
selfie = "3.1.1"
kotlin = "2.4.20"
gradle-buildconfig = "6.1.0"
compose-version = "1.12.0"
compose-version = "1.11.1"
jewel = "0.40.0-262.10315.125"
intelliJPlatformBuild = "262.9437.288"
jna = "5.19.1"
filekit = "0.16.0"
filekit = "0.15.0"
kotlinx-serialization = "1.11.0"
let-plot-compose = "3.2.2"
let-plot-multiplatform = "4.11.0"
Expand Down Expand Up @@ -95,6 +95,7 @@ smile = ["smile-core", "smile-kotlin"]
[plugins]
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
kotlin-dataframe = { id = "org.jetbrains.kotlin.plugin.dataframe", version.ref = "kotlin" }
compose = { id = "org.jetbrains.compose", version.ref = "compose-version" }
kotlin-plugin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
gradle-buildconfig-plugin = { id = "com.github.gmazzo.buildconfig", version.ref = "gradle-buildconfig" }
Expand Down
2 changes: 1 addition & 1 deletion ui/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ plugins {
}

group = "moritz.lindner.masterarbeit"
version = "1.19.9"
version = "1.20.0"
val createMetrics = false

kotlin {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ import androidx.compose.ui.window.application
import io.github.oshai.kotlinlogging.KotlinLogging
import moritz.lindner.masterarbeit.buildconfig.BuildConfig
import moritz.lindner.masterarbeit.ui.common.AboutPanel.showAboutDialog
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME_LONG
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME_SHORT
import moritz.lindner.masterarbeit.ui.common.Icons
import moritz.lindner.masterarbeit.ui.components.EPAVisualizerUi
import moritz.lindner.masterarbeit.ui.generated.resources.Res
Expand Down Expand Up @@ -56,7 +57,7 @@ val logger = KotlinLogging.logger {}
@ExperimentalJewelApi
fun main() {
try {
logger.info { "Starting EPA-Visualizer ${BuildConfig.APP_VERSION}" }
logger.info { "Starting VisEPA ${BuildConfig.APP_VERSION}" }
setSystemProperties()
setupMemoryMonitoring()
runApplication()
Expand All @@ -70,10 +71,10 @@ fun main() {
@Composable
private fun AppTitleWithLogo() {
Tooltip(
tooltip = { Text("$APPLICATION_NAME version ${BuildConfig.APP_VERSION}") }
tooltip = { Text("$APPLICATION_NAME_SHORT version ${BuildConfig.APP_VERSION}") }
) {
Row(verticalAlignment = Alignment.CenterVertically) {
Text(APPLICATION_NAME)
Text(APPLICATION_NAME_SHORT)
Icon(Icons.logo, "App Logo", modifier = Modifier.size(32.dp))
}
}
Expand All @@ -82,7 +83,7 @@ private fun AppTitleWithLogo() {
@OptIn(ExperimentalFoundationApi::class)
@Composable
private fun GitHubButton() {
Tooltip({ Text("Open the $APPLICATION_NAME repository on Github") }) {
Tooltip({ Text("Open the $APPLICATION_NAME_SHORT repository on Github") }) {
IconButton(
onClick = {
runCatching {
Expand Down Expand Up @@ -135,7 +136,7 @@ private fun runApplication() {
placement = WindowPlacement.Maximized,
isMinimized = false,
),
title = APPLICATION_NAME,
title = APPLICATION_NAME_SHORT,
icon = painterResource(Res.drawable.logo),
) {
LaunchedEffect(Unit) {
Expand Down Expand Up @@ -183,7 +184,7 @@ private fun setupMemoryMonitoring() {

private fun setSystemProperties() {
val properties = mapOf(
"apple.awt.application.name" to APPLICATION_NAME,
"apple.awt.application.name" to APPLICATION_NAME_LONG,
"awt.useSystemAAFontSettings" to "on",
"swing.aatext" to "true",
"sun.awt.useSystemAAFontSettings" to "on",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package moritz.lindner.masterarbeit.ui.common

import moritz.lindner.masterarbeit.buildconfig.BuildConfig
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME_LONG
import javax.swing.JOptionPane
import javax.swing.JOptionPane.showMessageDialog

Expand All @@ -10,22 +10,22 @@ object AboutPanel {
showMessageDialog(
null,
"""
$APPLICATION_NAME
$APPLICATION_NAME_LONG
Version: ${BuildConfig.APP_VERSION}

Interactive Visualization of Extended Prefix Automaton

A tool for analyzing trace variants in large, complex event logs using
Extended Prefix Automata (EPA) and different semantic and hierarchical tree layouts.
enhanced Extended Prefix Automata (EPA*) and different semantic and hierarchical tree layouts.
This visualization approach encodes thousands of trace variants while
minimizing visual clutter, supporting interactive filtering and analysis.

Built as part of a Master's Thesis at Humboldt-Universität zu Berlin.

This application and the master thesis is currently under development and not finished.
This application.

Built with Kotlin and Compose Desktop
Process Mining • Event Log Visualization • Variant Analysis
Process mining • Variant Analysis • Visual analytics • Extended Prefix Automata • Filter • Layout

Author: Moritz Lindner
Supervisor: Prof. Dr. Jan Mendling
Expand All @@ -34,7 +34,7 @@ object AboutPanel {

© 2025-2026 Moritz Lindner
""".trimIndent(),
"About $APPLICATION_NAME",
"About $APPLICATION_NAME_LONG",
JOptionPane.INFORMATION_MESSAGE
)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package moritz.lindner.masterarbeit.ui.common

object Constants {
const val APPLICATION_NAME = "EPA Visualizer"
const val APPLICATION_NAME_LONG = "Variant Analysis Visualization through Enhanced Extended Prefix Automata"
const val APPLICATION_NAME_SHORT = "VisEPA"
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import io.github.vinceglb.filekit.dialogs.compose.rememberDirectoryPickerLauncher
import moritz.lindner.masterarbeit.epa.project.Project
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME
import moritz.lindner.masterarbeit.ui.common.Constants.APPLICATION_NAME_LONG
import moritz.lindner.masterarbeit.ui.common.Icons
import moritz.lindner.masterarbeit.ui.logger
import org.jetbrains.jewel.foundation.theme.JewelTheme
Expand Down Expand Up @@ -63,7 +63,7 @@ fun ProjectSelectionUi(
Spacer(modifier = Modifier.height(24.dp))

Text(
text = "Welcome to $APPLICATION_NAME",
text = "Welcome to $APPLICATION_NAME_LONG",
style = JewelTheme.typography.h1TextStyle
)

Expand Down
Loading