From fc13a6ec66c8eba4f21124fb780e7a37576db249 Mon Sep 17 00:00:00 2001 From: Anthony Stirling <77850077+Frooodle@users.noreply.github.com> Date: Mon, 22 Dec 2025 00:50:27 +0000 Subject: [PATCH] ui --- app/core/build.gradle | 18 +- .../main/resources/static/api-landing.html | 268 ++++++++++++++++++ .../main/resources/static/api-wordmark.svg | 4 + 3 files changed, 287 insertions(+), 3 deletions(-) create mode 100644 app/core/src/main/resources/static/api-landing.html create mode 100644 app/core/src/main/resources/static/api-wordmark.svg diff --git a/app/core/build.gradle b/app/core/build.gradle index 0ff725d3dc..5f3b1af4ff 100644 --- a/app/core/build.gradle +++ b/app/core/build.gradle @@ -268,6 +268,18 @@ tasks.register('cleanFrontendAssets', Delete) { delete generatedFrontendPaths.collect { new File(resourcesStaticDir, it) } } +tasks.register('copyApiLandingPage', Copy) { + group = 'frontend' + description = 'Copy API landing page to index.html for backend-only mode' + from(new File(resourcesStaticDir, 'api-landing.html')) + into(resourcesStaticDir) + rename('api-landing.html', 'index.html') + dependsOn cleanFrontendAssets + doFirst { + println "Copying API landing page to index.html for backend-only mode..." + } +} + // Ensure copyFrontendAssets runs after spotless tasks tasks.named('copyFrontendAssets').configure { mustRunAfter tasks.matching { it.name.startsWith('spotless') } @@ -277,9 +289,9 @@ if (buildWithFrontend) { println "Frontend build enabled - JAR will include React frontend" processResources.dependsOn copyFrontendAssets } else { - println "Frontend build disabled - JAR will be backend-only" - // When not building the UI, ensure any stale frontend assets are removed - processResources.dependsOn cleanFrontendAssets + println "Frontend build disabled - JAR will be backend-only with API landing page" + // When not building the UI, ensure any stale frontend assets are removed and use API landing page + processResources.dependsOn copyApiLandingPage } bootJar.dependsOn ':common:jar' diff --git a/app/core/src/main/resources/static/api-landing.html b/app/core/src/main/resources/static/api-landing.html new file mode 100644 index 0000000000..29a0d4abfe --- /dev/null +++ b/app/core/src/main/resources/static/api-landing.html @@ -0,0 +1,268 @@ + + +
+ + + +Backend-only mode without web UI
++ This Stirling-PDF instance is running in API-only mode. The web interface has not been included in this build. +
+If you're using Docker:
+stirlingtools/stirling-pdf:latestIf you're using a JAR file:
+Stirling-PDF-server.jar which is the API-only version without UIStirling-PDF.jar - Standard version with UIStirling-PDF-with-login.jar - Version with authentication featuresIf you built from source:
+./gradlew build -PbuildWithFrontend=true/frontend directoryJoin our community for support:
+