Control Panel
Overview
The Overview page opens the Web UI and shows the access information and system details you need to connect to StreamShuttle.

- Web UI Access: Use the Local or VPN URL to open StreamShuttle in a browser.
- Network Details: Review the local network address and VPN connection information.
- System Information: Check the operating system, StreamShuttle version, and build date.
General Settings

| Option | Description |
|---|---|
| Start at boot | Starts StreamShuttle automatically when the computer starts. On Linux, you will probably need to enable automatic login for the user account running StreamShuttle. |
| Prevent Sleep | Prevents the computer from sleeping while StreamShuttle is running |
Hub Settings
Configure the hubs running on this PC.

By default, both Temporary Event Storage and the Temporary Database use memory. If StreamShuttle crashes or the computer shuts down unexpectedly, you will lose any events that have not completed. To prevent data loss, uncheck "Use memory" for Temporary Event Storage. You can also specify where to persist temporary data. Ideally, use a different disk from the Storage Root. You must also persist the Temporary Database to disk by unchecking "Use memory" or selecting "Snapshot."
Leaving the Temporary Database in memory while enabling snapshotting provides the best performance. Storing the Temporary Database directly on disk may cause performance issues, especially if the disk is not an SSD or is not fast enough. With snapshotting enabled, most drives will be sufficient for storing temporary data, including slower external USB drives.
The events will be recovered the next time StreamShuttle is restarted.
| Option | Description |
|---|---|
| Hub Name | Name used to identify the hub |
| Enabled | Toggles whether or not this hub should be started when StreamShuttle starts |
| Storage Root | Directory where media events and all hub-related data are stored. |
| Temporary Event Storage | Directory where temporary event data are stored, or Use memory. |
| Temporary Database - Use memory | Stores the temporary event database in memory. |
| Temporary Database - Snapshot | Creates snapshots of the in-memory database. |
| Run global object detector | Runs a global object detector on this hub. Enable this only after confirming that device-based GPU detection works as expected. |
* Most changes require the hub services to be restarted. Changing the "Storage Root" without first copying the existing data to the new location will result in data loss.
Certificate Options
You need a valid certificate to use every app feature on mobile devices, including PWA installation and push notifications.
A certificate is created automatically when StreamShuttle starts for the first time. It secures traffic between your devices and StreamShuttle services. You must manually install this certificate on each device where you use the app to avoid insecure or self-signed certificate warnings. These warnings appear because the certificate was generated locally instead of by a trusted certificate authority. Installing the certificate tells the device to trust it.

| Option | Description |
|---|---|
| Install Certificate | Installs the certificate on this device, allowing you to view StreamShuttle without certificate warnings. |
| Regenerate Certificate | Regenerates the certificate using all domains from the latest configuration. Regenerate it if any domain used to access StreamShuttle services changes, such as when you update the VPN server address or the device's local IP address. Enable static address mapping for the device if possible. After regenerating the certificate, reinstall it on every device that accesses StreamShuttle. |
| Open Certificate Directory | Opens the directory where the certificate and private key are stored. |
| Download Certificate | Downloads the certificate for installation on devices that will access StreamShuttle. You can also download it from the Dashboard in the Web UI. |
Service Actions
Used to view logs and manage application services.

| Option | Description |
|---|---|
| Show Recent Logs | Opens a window with the latest API and hub log entries. "Open logs directory" opens the file browser in the directory where all logs are stored. |
| Stop Services | Stops the API, Web UI, and hub services. |
| Restart Services | Stops and then starts the API, Web UI, and hub services. |
| Update Statuses | Refreshes the displayed service states. |
DDNS Configuration
Dynamic DNS (DDNS) ensures that you can reach your home network even when its public IP address changes. Most internet service providers do not give customers a static IP address, so an outage or network maintenance may result in a new address. DDNS updates a DNS server with your new IP address. You can then use the DDNS hostname to access your network instead of updating the IP address in every device configuration.
* Ideally, enable DDNS before configuring the VPN.

Enable DDNS
- Toggles the DDNS service.
VPN Configuration
This section lets you quickly set up and manage a secure VPN so you can access StreamShuttle securely from anywhere.

Enable VPN
- Toggles VPN management.
VPN Endpoint
Configure the IP address or hostname used to connect to the VPN when you are away from home.
| Option | Description |
|---|---|
| Use DDNS address for VPN clients | Uses the configured DDNS address as the endpoint for VPN clients. |
| Detected External IP | Read-only public IP address detected for connections from outside the local network. |
| Manual / Fallback Address | Manually specified endpoint used when automatic detection is unavailable or unsuitable. |
| Detect External IP | Attempts to get the public IP address by querying the local router, then uses external lookup services if necessary. |
| Save Manual / Fallback Address | Stores a manually entered external VPN address. Clients use this address to connect to the VPN. |
Server Configuration
This area is used to configure the address space the VPN uses for clients and which port we should use to connect to the VPN.
| Option | Description |
|---|---|
| Base Address | Address space used when assigning addresses to clients. |
| Port | Port clients use when connecting to the VPN server. |
| Save and Restart VPN | Regenerates the VPN server configuration and restarts the VPN service. |
VPN Server Actions
This area is used to control the VPN service and generate VPN server keys.
| Option | Description |
|---|---|
| Generate VPN Server Keys | Regenerates the server's private key and updates all client configurations. |
| Start VPN | Starts the WireGuard "StreamShuttle Tunnel" service |
| Stop VPN | Stops the WireGuard "StreamShuttle Tunnel" service |
| Update Configuration and Restart VPN | Regenerates the VPN server configuration and restarts the "StreamShuttle Tunnel" service |
Automatic Port Forwarding
The Automatic Port Forwarding configuration attempts to open the VPN port automatically. When enabled, StreamShuttle tries to open the port through UPnP or NAT-PMP. If this does not work, you will see a "FAILED" message and must forward the port manually in your router.
You can usually find instructions by searching for your router's model number with "open port" or "port forward."
| Option | Description |
|---|---|
| Port | Port StreamShuttle attempts to forward. This is the same port configured under "Server Configuration -> Port." |
| Attempt to open port for VPN | Attempts to open the VPN service port using UPnP or NAT-PMP. |
VPN Clients
Use the VPN clients section to create and manage configurations for connecting to the VPN server and StreamShuttle.
Some changes require you to restart the VPN server. For example, a new client cannot connect until you restart the VPN. When a restart is required, a banner prompts you to select "Save and Restart VPN."
| Option | Description |
|---|---|
| Add New VPN Client | Adds a new VPN client entry |
| Client Name | Descriptive name used to identify this VPN client configuration, such as John Smith's iPhone. |
| Client Address | The automatically generated VPN client address that has been assigned to this configuration. |
| Delete Client | Removes the client configuration so it can no longer connect to the VPN. Restart the VPN server after removal. |
| Save Config | Updates the configuration with the updated "Client Name" |
| Download Config | Downloads the VPN client configuration file for installation on the client's device. |
| Show Config QR Code | Displays a QR code that the user can scan to import the configuration without transferring the file. |