diff --git a/docs/Advanced Configuration/Other Customisations.md b/docs/Advanced Configuration/Other Customisations.md
index 8d68f93..da565ca 100644
--- a/docs/Advanced Configuration/Other Customisations.md
+++ b/docs/Advanced Configuration/Other Customisations.md
@@ -1,6 +1,9 @@
---
sidebar_position: 13
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
# Other Customisations
Stirling PDF offers various other customisation options, such as:
@@ -24,10 +27,29 @@ system:
In configs/Settings.yml
### Using an outgoing HTTP(S) proxy
-To make Stirling PDF use an outgoing proxy server (e.g. for checking the license validity), the `JAVA_CUSTOM_OPTS` environment variable need to be used to set some Java properties:
-```
--Dhttp.proxyHost=proxyserver -Dhttp.proxyPort=8888
--Dhttp.nonProxyHosts="localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local"
--Dhttps.proxyHost=proxyserver -Dhttps.proxyPort=888
--Dhttps.nonProxyHosts="localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local"
-```
+To make Stirling PDF use an outgoing proxy server (e.g. for checking the license validity):
+
+
+
+ ```bash
+ JAVA_CUSTOM_OPTS="-Dhttp.proxyHost=proxyserver -Dhttp.proxyPort=8888 -Dhttp.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local' -Dhttps.proxyHost=proxyserver -Dhttps.proxyPort=8888 -Dhttps.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local'"
+ ```
+
+
+ ```bash
+ docker run -d \
+ -p 8080:8080 \
+ -e JAVA_CUSTOM_OPTS="-Dhttp.proxyHost=proxyserver -Dhttp.proxyPort=8888 -Dhttp.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local' -Dhttps.proxyHost=proxyserver -Dhttps.proxyPort=8888 -Dhttps.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local'" \
+ stirlingtools/stirling-pdf:latest
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ image: stirlingtools/stirling-pdf:latest
+ environment:
+ JAVA_CUSTOM_OPTS: "-Dhttp.proxyHost=proxyserver -Dhttp.proxyPort=8888 -Dhttp.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local' -Dhttps.proxyHost=proxyserver -Dhttps.proxyPort=8888 -Dhttps.nonProxyHosts='localhost|127.0.0.1|127.0.1.1|127.0.0.0/8|::1|10.0.0.0/8|.svc|.cluster.local'"
+ ```
+
+
diff --git a/docs/Analytics-and-telemetry.md b/docs/Analytics-and-telemetry.md
index 0ddaeb2..1e4fe2e 100644
--- a/docs/Analytics-and-telemetry.md
+++ b/docs/Analytics-and-telemetry.md
@@ -3,6 +3,8 @@ sidebar_position: 9
title: Analytics and Telemetry
id: analytics-telemetry
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
# Analytics and Telemetry
@@ -137,16 +139,27 @@ Analytics are governed by a **global master toggle**, **component toggles**, and
Controls **all** analytics and whether a consent banner appears.
-**Environment variable**
-```bash
-SYSTEM_ENABLEANALYTICS=false # true | false | (unset = null)
-```
-
-**settings.yml**
-```yaml
-system:
- enableAnalytics: false # true | false | null (unset)
-```
+
+
+ ```yaml
+ system:
+ enableAnalytics: false # true | false | null (unset)
+ ```
+
+
+ ```bash
+ SYSTEM_ENABLEANALYTICS=false # true | false | (unset = null)
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ environment:
+ SYSTEM_ENABLEANALYTICS: false
+ ```
+
+
**Behavior**
- `false`: Disables **all** analytics (no consent banner; PostHog & Scarf are off).
@@ -157,23 +170,37 @@ system:
Use these to selectively enable/disable providers **in addition** to the global toggle.
-**PostHog**
-```bash
-SYSTEM_ENABLEPOSTHOG=false
-```
-```yaml
-system:
- enablePosthog: false # true | false | null
-```
-
-**Scarf tracking pixel**
-```bash
-SYSTEM_ENABLESCARF=false
-```
-```yaml
-system:
- enableScarf: false # true | false | null
-```
+**PostHog:**
+
+
+
+ ```yaml
+ system:
+ enablePosthog: false # true | false | null
+ ```
+
+
+ ```bash
+ SYSTEM_ENABLEPOSTHOG=false
+ ```
+
+
+
+**Scarf tracking pixel:**
+
+
+
+ ```yaml
+ system:
+ enableScarf: false # true | false | null
+ ```
+
+
+ ```bash
+ SYSTEM_ENABLESCARF=false
+ ```
+
+
**Interaction**
- If `enableAnalytics` is `false`, everything is off regardless of component toggles.
@@ -201,25 +228,27 @@ When analytics are allowed globally (`system.enableAnalytics: true` or resolved
If you want to disable **all** analytics and telemetry (and suppress any consent prompts) at once:
-**Environment variable**
-```bash
-SYSTEM_ENABLEANALYTICS=false
-```
-
-**settings.yml**
-```yaml
-system:
- enableAnalytics: false
-```
-
-**Docker Compose example**
-```yaml
-services:
- stirling-pdf:
- environment:
- - SYSTEM_ENABLEANALYTICS=false
- # ... other configuration
-```
+
+
+ ```yaml
+ system:
+ enableAnalytics: false
+ ```
+
+
+ ```bash
+ SYSTEM_ENABLEANALYTICS=false
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ environment:
+ SYSTEM_ENABLEANALYTICS: false
+ ```
+
+
---
diff --git a/docs/Configuration/Configuration.md b/docs/Configuration/Configuration.md
index b00f9d5..6558d30 100644
--- a/docs/Configuration/Configuration.md
+++ b/docs/Configuration/Configuration.md
@@ -4,6 +4,8 @@ slug: /Configuration
title: Configuration Guide
description: Configure Stirling-PDF using environment variables, settings files, or in-app settings
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
# Configuration Guide
@@ -62,20 +64,45 @@ system:
### Authentication
Enable user login:
-```bash
-SECURITY_ENABLELOGIN=true
-SECURITY_INITIALLOGIN_USERNAME=admin
-SECURITY_INITIALLOGIN_PASSWORD=changeme123
-```
+
+
+
+ ```yaml
+ security:
+ enableLogin: true
+ initialLogin:
+ username: admin
+ password: changeme123
+ ```
+
+
+ ```bash
+ SECURITY_ENABLELOGIN=true
+ SECURITY_INITIALLOGIN_USERNAME=admin
+ SECURITY_INITIALLOGIN_PASSWORD=changeme123
+ ```
+
+
Default credentials: `admin` / `stirling` (change immediately after first login)
### Language & Localization
-```bash
-LANGS=en_GB # Available languages
-SYSTEM_DEFAULTLOCALE=en-GB # Default language
-```
+
+
+ ```yaml
+ langs: en_GB
+ system:
+ defaultLocale: en-GB
+ ```
+
+
+ ```bash
+ LANGS=en_GB # Available languages
+ SYSTEM_DEFAULTLOCALE=en-GB # Default language
+ ```
+
+
**How language selection works:**
@@ -111,11 +138,26 @@ MODE=BOTH # Options: BOTH, FRONTEND, BACKEND
### File Upload Limits
-```bash
-SYSTEM_MAXFILESIZE=2000 # MB
-SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE=2000MB
-SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE=2000MB
-```
+
+
+ ```yaml
+ system:
+ maxFileSize: 2000 # MB
+ spring:
+ servlet:
+ multipart:
+ max-file-size: 2000MB
+ max-request-size: 2000MB
+ ```
+
+
+ ```bash
+ SYSTEM_MAXFILESIZE=2000 # MB
+ SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE=2000MB
+ SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE=2000MB
+ ```
+
+
### Memory Management
diff --git a/docs/Configuration/Extra-Settings.md b/docs/Configuration/Extra-Settings.md
index a64534c..4551381 100644
--- a/docs/Configuration/Extra-Settings.md
+++ b/docs/Configuration/Extra-Settings.md
@@ -2,6 +2,8 @@
sidebar_position: 12
title: Custom Settings Configuration
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
# Custom Settings Configuration
@@ -48,16 +50,44 @@ server:
Configure HTTPS for secure connections:
-```yaml
-server:
- port: 8443 # Standard HTTPS port
- ssl:
- enabled: true
- key-store: classpath:keystore.p12 # Path to keystore file
- key-store-password: your-keystore-password
- key-store-type: PKCS12 # Type of keystore
- key-alias: tomcat # Alias of the certificate
-```
+
+
+ ```yaml
+ server:
+ port: 8443 # Standard HTTPS port
+ ssl:
+ enabled: true
+ key-store: classpath:keystore.p12 # Path to keystore file
+ key-store-password: your-keystore-password
+ key-store-type: PKCS12 # Type of keystore
+ key-alias: tomcat # Alias of the certificate
+ ```
+
+
+ ```bash
+ SERVER_PORT=8443
+ SERVER_SSL_ENABLED=true
+ SERVER_SSL_KEY-STORE=classpath:keystore.p12
+ SERVER_SSL_KEY-STORE-PASSWORD=your-keystore-password
+ SERVER_SSL_KEY-STORE-TYPE=PKCS12
+ SERVER_SSL_KEY-ALIAS=tomcat
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ image: stirlingtools/stirling-pdf:latest
+ environment:
+ SERVER_PORT: 8443
+ SERVER_SSL_ENABLED: true
+ SERVER_SSL_KEY-STORE: classpath:keystore.p12
+ SERVER_SSL_KEY-STORE-PASSWORD: your-keystore-password
+ SERVER_SSL_KEY-STORE-TYPE: PKCS12
+ SERVER_SSL_KEY-ALIAS: tomcat
+ ```
+
+
### Creating a Self-Signed Certificate
diff --git a/docs/Configuration/Fail2Ban.md b/docs/Configuration/Fail2Ban.md
index 464a91e..379ab26 100644
--- a/docs/Configuration/Fail2Ban.md
+++ b/docs/Configuration/Fail2Ban.md
@@ -17,12 +17,32 @@ Stirling-PDF logs failed authentication attempts to a log file which Fail2Ban mo
## Prerequisites
- Fail2Ban installed on your system
- Access to Stirling-PDF log directory
-- Security settings configured in `/configs/settings.yml`:
- ```yaml
- security:
- enableLogin: true # Login must be enabled for Fail2Ban integration
- loginAttemptCount: -1 # Set to -1 when using Fail2Ban recommended but not required
- ```
+- Security settings configured:
+
+
+
+ ```yaml
+ security:
+ enableLogin: true # Login must be enabled for Fail2Ban integration
+ loginAttemptCount: -1 # Set to -1 when using Fail2Ban recommended but not required
+ ```
+
+
+ ```bash
+ SECURITY_ENABLELOGIN=true
+ SECURITY_LOGINATTEMPTCOUNT=-1
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ environment:
+ SECURITY_ENABLELOGIN: true
+ SECURITY_LOGINATTEMPTCOUNT: -1
+ ```
+
+
### Important Configuration Notes
- The `enableLogin` setting must be set to `true` as Fail2Ban integration requires authentication to be active
diff --git a/docs/Configuration/System and Security.md b/docs/Configuration/System and Security.md
index 9a5e19f..2a195c5 100644
--- a/docs/Configuration/System and Security.md
+++ b/docs/Configuration/System and Security.md
@@ -10,17 +10,18 @@ Stirling PDF allows customization of system and security settings. For security
## Basic Security Settings
-- `enableLogin`: Enables or disables the login functionality
+- `enableLogin`: Enables or disables the login functionality (default: `true` as of V2.0+)
- `csrfDisabled`: Set to 'true' to disable CSRF protection (not recommended for production)
- `defaultLocale`: Set the default language (e.g. 'de-DE', 'fr-FR', etc)
- `googlevisibility`: 'true' to allow Google visibility (via robots.txt), 'false' to disallow
## Authentication Setup
+**Note:** Authentication is **enabled by default**. If you want to run Stirling-PDF without authentication, see the [Disabling Login](#disabling-login) section below.
+
### Prerequisites
1. Ensure the `/configs` directory is mounted as a volume in Docker for persistence across updates
2. For Docker users: Set `DISABLE_ADDITIONAL_FEATURES=false` in environment variables
-3. Enable login either via `settings.yml` or set `SECURITY_ENABLELOGIN=true`
### Initial Login Credentials
- Default Username: `admin`
@@ -56,6 +57,64 @@ When using the API:
X-API-KEY: your-api-key-here
```
+## Disabling Login
+
+If you want to run Stirling-PDF without authentication (open access mode), you can disable the login functionality.
+
+
+
+ ```yaml
+ security:
+ enableLogin: false
+ ```
+
+
+ ```bash
+ SECURITY_ENABLELOGIN=false
+ ```
+
+
+ ```bash
+ docker run -d \
+ -p 8080:8080 \
+ -e SECURITY_ENABLELOGIN=false \
+ stirlingtools/stirling-pdf:latest
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ image: stirlingtools/stirling-pdf:latest
+ environment:
+ SECURITY_ENABLELOGIN: false
+ ```
+
+
+ ```bash
+ java -jar Stirling-PDF.jar -DSECURITY_ENABLELOGIN=false
+ ```
+
+
+ ```bash
+ export SECURITY_ENABLELOGIN=false
+ java -jar Stirling-PDF.jar
+ ```
+
+
+
+### When to Disable Login
+
+**Consider disabling login if:**
+- Running Stirling-PDF locally for personal use only
+- Using it in a completely trusted network environment
+- You don't need user management or access control
+
+**Keep login enabled if:**
+- Running on a server accessible from the internet
+- Multiple users need access with different permissions
+- You need audit trails or usage tracking
+- Running in a shared or business environment
---
@@ -377,7 +436,7 @@ customFiles/
```yaml
security:
- enableLogin: false # set to 'true' to enable login
+ enableLogin: true # Login enabled by default; set to 'false' to disable
csrfDisabled: true
jwt:
persistence: true
diff --git a/docs/Configuration/Usage Monitoring.md b/docs/Configuration/Usage Monitoring.md
index 4aa2978..33b83c5 100644
--- a/docs/Configuration/Usage Monitoring.md
+++ b/docs/Configuration/Usage Monitoring.md
@@ -3,6 +3,8 @@ sidebar_position: 5
title: Usage Monitoring
tags: [enterprise, management, feature, advanced feature]
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
# Usage Monitoring
> **Tier**: Enterprise
@@ -52,45 +54,65 @@ Stirling-PDF supports application metrics monitoring using Prometheus. This feat
2. Enterprise mode enabled in your configuration
3. Running with additional features enabled (DISABLE_ADDITIONAL_FEATURES=false)
-### Settings
-
-Stirling-PDF can be configured to use Prometheus monitoring by setting the `JAVA_CUSTOM_OPTS` environment variable. The application uses this variable to add custom Java options at runtime.
-
-Set the following environment variable in your deployment environment:
-
-```bash
-JAVA_CUSTOM_OPTS="-Dmanagement.endpoints.web.exposure.include=prometheus,health,info -Dmanagement.endpoint.health.show-details=always -Dmanagement.metrics.export.prometheus.enabled=true -Denterprisemanagement.metrics.enabled=true"
-```
-
-This configures:
+### Configuration
+
+Configure Prometheus monitoring using your preferred method:
+
+
+
+ Configure in your `/configs/custom_settings.yml` file:
+
+ ```yaml
+ management:
+ endpoints:
+ web:
+ exposure:
+ include: prometheus,health,info
+ endpoint:
+ health:
+ show-details: always
+ metrics:
+ export:
+ prometheus:
+ enabled: true
+ enterprisemanagement:
+ metrics:
+ enabled: true
+ ```
+
+
+ Set the `JAVA_CUSTOM_OPTS` environment variable:
+
+ ```bash
+ JAVA_CUSTOM_OPTS="-Dmanagement.endpoints.web.exposure.include=prometheus,health,info -Dmanagement.endpoint.health.show-details=always -Dmanagement.metrics.export.prometheus.enabled=true -Denterprisemanagement.metrics.enabled=true"
+ ```
+
+
+ ```bash
+ docker run -d \
+ -p 8080:8080 \
+ -e JAVA_CUSTOM_OPTS="-Dmanagement.endpoints.web.exposure.include=prometheus,health,info -Dmanagement.endpoint.health.show-details=always -Dmanagement.metrics.export.prometheus.enabled=true -Denterprisemanagement.metrics.enabled=true" \
+ stirlingtools/stirling-pdf:latest
+ ```
+
+
+ ```yaml
+ services:
+ stirling-pdf:
+ image: stirlingtools/stirling-pdf:latest
+ environment:
+ JAVA_CUSTOM_OPTS: "-Dmanagement.endpoints.web.exposure.include=prometheus,health,info -Dmanagement.endpoint.health.show-details=always -Dmanagement.metrics.export.prometheus.enabled=true -Denterprisemanagement.metrics.enabled=true"
+ ```
+
+
+
+**What this configures:**
- Prometheus metrics endpoint exposure
- Health and info endpoints for basic monitoring
- Detailed health information
- Prometheus metrics export
- Enterprise metrics collection
-### Configuration in custom_settings.yml
-
-Alternatively, you can configure these settings in your `/configs/custom_settings.yml` file:
-
-```yaml
-management:
- endpoints:
- web:
- exposure:
- include: prometheus,health,info
- endpoint:
- health:
- show-details: always
- metrics:
- export:
- prometheus:
- enabled: true
-enterprisemanagement:
- metrics:
- enabled: true
-```
-
### Accessing Metrics
Once configured, Prometheus metrics are available at the following endpoint:
diff --git a/docs/FAQ.md b/docs/FAQ.md
index e7ba66e..f52bfc2 100644
--- a/docs/FAQ.md
+++ b/docs/FAQ.md
@@ -2,6 +2,9 @@
sidebar_position: 8
title: FAQ
---
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
# Frequently Asked Questions
### Q1: Why are .htm files being downloaded when I use the application?
@@ -44,3 +47,56 @@ No, we track no data without your explicit consent. You can see how, when, and w
Uploads go to the server or desktop instance you're using, not to Stirling servers. The macOS/Windows desktop apps process files locally—even when you pick the Stirling Cloud sign-in today—so your PDFs stay on your device unless you point the app to a remote self-hosted server. Planned SaaS-assisted features (for desktop app) will be opt-in when they arrive.
+### Q10: What is the difference between Stirling-PDF.jar and Stirling-PDF-server.jar?
+
+**Stirling-PDF.jar** (Full Package):
+- Bundles the frontend user interface inside the JAR along with the backend server
+- Complete standalone application - download and run
+- Use this for standard deployments
+
+**Stirling-PDF-server.jar** (Backend Only - **Advanced**):
+- Contains only the backend server (no bundled frontend UI)
+- Use this for API access, desktop app integration, or when hosting the frontend separately
+
+Both JAR files include the same backend functionality. The main difference is whether the frontend is bundled with the backend or needs to be hosted separately.
+
+### Q11: How do I disable login/authentication?
+
+Authentication is enabled by default in Stirling-PDF. To disable it:
+
+
+
+ ```yaml
+ security:
+ enableLogin: false
+ ```
+
+
+ ```bash
+ docker run -d \
+ -p 8080:8080 \
+ -e SECURITY_ENABLELOGIN=false \
+ stirlingtools/stirling-pdf:latest
+ ```
+
+
+ ```yaml
+ environment:
+ SECURITY_ENABLELOGIN: false
+ ```
+
+
+ ```bash
+ java -jar Stirling-PDF.jar -DSECURITY_ENABLELOGIN=false
+ ```
+
+
+ ```bash
+ export SECURITY_ENABLELOGIN=false
+ java -jar Stirling-PDF.jar
+ ```
+
+
+
+For more details, see the [System and Security Configuration](./Configuration/System%20and%20Security.md#disabling-login) documentation.
+
diff --git a/docs/Installation/Mac.md b/docs/Installation/Mac.md
index dfc817f..e43499e 100644
--- a/docs/Installation/Mac.md
+++ b/docs/Installation/Mac.md
@@ -101,9 +101,25 @@ brew install openjdk@21
export PATH="/usr/local/opt/openjdk@21/bin:$PATH"
```
+### JAR Downloads
+
+Stirling-PDF comes in two different JAR files:
+
+**Stirling-PDF.jar** (Full Package - Recommended):
+- Download: [Stirling-PDF.jar](https://files.stirlingpdf.com/Stirling-PDF.jar)
+- Bundles frontend UI + backend server in one file
+- Complete standalone application - download and run
+
+**Stirling-PDF-server.jar** (Backend Only - **Advanced**):
+- Download: [Stirling-PDF-server.jar](https://files.stirlingpdf.com/Stirling-PDF-server.jar)
+- Backend server only (no bundled UI)
+- For API access, desktop app, or when hosting the frontend separately
+
+**Note:** Login/authentication is enabled by default. You can disable it by setting `SECURITY_ENABLELOGIN=false` as an environment variable. See [FAQ Q11](../FAQ.md#q11-how-do-i-disable-loginauthentication) for details.
+
### Running the Server
-1. **Download the JAR file**: [Stirling-PDF.jar](https://files.stirlingpdf.com/Stirling-PDF.jar)
+1. **Download your preferred JAR file** (see above)
2. **Open Terminal** and navigate to the download folder:
```bash
diff --git a/docs/Installation/Unix.md b/docs/Installation/Unix.md
index 31eb75f..73aa1fb 100644
--- a/docs/Installation/Unix.md
+++ b/docs/Installation/Unix.md
@@ -134,9 +134,21 @@ Install the following software:
### Step 4: Grab latest Stirling-PDF Jar
-The JAR can be downloaded in two versions, [normal](https://files.stirlingpdf.com/Stirling-PDF.jar) and [security](https://files.stirlingpdf.com/Stirling-PDF-with-login.jar)
+Stirling-PDF comes in two different JAR files:
-Example for the "normal" version
+**Stirling-PDF.jar** (Full Package - Recommended):
+- Bundles frontend UI + backend server in one file
+- Complete standalone application - download and run
+- Download: [Stirling-PDF.jar](https://files.stirlingpdf.com/Stirling-PDF.jar)
+
+**Stirling-PDF-server.jar** (Backend Only - **Advanced**):
+- Backend server only (no bundled UI)
+- For API access, desktop app, or when hosting the frontend separately
+- Download: [Stirling-PDF-server.jar](https://files.stirlingpdf.com/Stirling-PDF-server.jar)
+
+**Note:** Login/authentication is enabled by default. You can disable it by setting `SECURITY_ENABLELOGIN=false` as an environment variable. See [FAQ Q11](../FAQ.md#q11-how-do-i-disable-loginauthentication) for details.
+
+Example download and setup:
```bash
sudo wget https://files.stirlingpdf.com/Stirling-PDF.jar
diff --git a/docs/Installation/Windows.md b/docs/Installation/Windows.md
index 28952fc..39fdce6 100644
--- a/docs/Installation/Windows.md
+++ b/docs/Installation/Windows.md
@@ -56,23 +56,30 @@ Want to host Stirling-PDF on a Windows server for multiple users? Use the server
### Server Downloads
-**Without Login (Open Access):**
+Stirling-PDF comes in two different JAR files:
+
+**Stirling-PDF.jar** (Full Package - Recommended):
- Download: [Stirling-PDF.jar](https://files.stirlingpdf.com/Stirling-PDF.jar)
-- Anyone on your network can access it
-- No user accounts needed
+- Bundles frontend UI + backend server in one file
+- Complete standalone application - download and run
-**With Login (User Management):**
-- Download: [Stirling-PDF-with-login.jar](https://files.stirlingpdf.com/Stirling-PDF-with-login.jar)
-- Requires user accounts to access
-- Better for shared/business environments
+**Stirling-PDF-server.jar** (Backend Only - **Advanced**):
+- Download: [Stirling-PDF-server.jar](https://files.stirlingpdf.com/Stirling-PDF-server.jar)
+- Backend server only (no bundled UI)
+- For API access, desktop app, or when hosting the frontend separately
**Required:** [Java JDK 21](https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.exe) - Server versions need Java installed
+**Note:** Login/authentication is enabled by default in both versions. You can disable it by setting `SECURITY_ENABLELOGIN=false` as an environment variable. See [FAQ Q11](../FAQ.md#q11-how-do-i-disable-loginauthentication) for details.
+
### Server Installation Steps
1. **Install Java JDK 21** from the link above
-2. **Download** your preferred server version
-3. **Run the .exe file**
+2. **Download** your preferred JAR file
+3. **Run the JAR file:**
+ ```bash
+ java -jar Stirling-PDF.jar
+ ```
4. **Access** via browser at `http://localhost:8080`
5. **Share the URL** with users on your network (e.g., `http://your-server-ip:8080`)