The Web Dashboard is a browser-based companion built directly into SwiftMiner. It provides a clean web interface containing overview stats, miner toggles, drop inventories, and log details. It is perfect if you run SwiftMiner on a headless Mac mini or want to let friends manage their own Twitch connections remotely.
What is the Web Dashboard?
By default, SwiftMiner is controlled via the macOS app window. When you enable the Web Dashboard, SwiftMiner spins up a lightweight, embedded web server on your Mac. You can interact with the app locally through a username and password, or externally via secure authentication protocols.
Enable the Dashboard
Follow these steps to turn on the embedded web server:
- Open SwiftMiner Settings (⌘,) and click the Web tab.
- Toggle Enable Web Dashboard to ON.
- Restart SwiftMiner to apply the changes.
Local Network Access
To access the dashboard from the same Mac or other devices on your home Wi-Fi network:
- Click Local Access Setup in the Web settings tab.
- Set a Username and a strong Password to secure the local page.
- Choose a port number (default is
8080). If port8080is already in use by another app, you can customize it to any value (e.g.8082). - Click Save. You can now access the dashboard by navigating to
http://localhost:8080(orhttp://[Your-Macs-IP]:8080from another device on your network) in your browser.
Internet Access & Twitch OAuth
If you are mining for multiple people or running the SwiftBot Discord integration, you can expose the Web Dashboard over the internet using a secure connection. This lets your friends log in using their own Twitch accounts, enter device activation codes, and check their miners without needing direct access to your Mac.
Internet Access is only offered when the Discord/SwiftBot integration is enabled or you have configured more than one miner. This ensures that exposing the server is reserved for setups that require self-service capabilities.
Step 1: Set up a Twitch Developer App
To verify external logins, you must register a Twitch Developer Application to generate Twitch sign-in credentials:
- Go to the Twitch Developer Console and sign in.
- Click Register Your Application.
- Set the following values:
- Name:
SwiftMiner [Your Server Name] - OAuth Redirect URLs: Add the redirect URL shown in SwiftMiner's Web settings page. It will look like
https://[your-tunnel-subdomain].swiftbot.dev/auth/callbackor similar. - Category:
Application Integration
- Name:
- Click Create. Copy the generated Client ID and click New Secret to generate a Client Secret.
Step 2: Input credentials in SwiftMiner
- In the Web settings tab, choose Twitch OAuth Setup.
- Paste your copied Twitch Client ID and Twitch Client Secret.
- Click Save.
Step 3: Register the secure tunnel
Exposing a local web server usually requires complex router port-forwarding and dynamic DNS configuration. SwiftMiner simplifies this by integrating a secure tunnel client:
- In the Web settings tab under Internet Access, click Register Tunnel.
- SwiftMiner communicates with the SwiftBot relay server to provision a unique, secure subdomain on
*.swiftbot.dev. - Once registered, SwiftMiner will establish an encrypted connection. The status will report
Connected, showing the public URL. - Share this URL with your friends. When they visit it, they will see a Twitch sign-in prompt. After signing in, they will only be able to view and manage their own Twitch miners.
Running behind a Reverse Proxy
If you prefer not to use the automated SwiftBot tunnel and want to host the Web Dashboard using your own domain via a self-managed reverse proxy (like Nginx, Caddy, Apache, or Cloudflare Tunnels), you can easily do so. Since SwiftMiner runs a standard HTTP server on your local network port, it is fully compatible with standard proxy routing.
Configuration Recommendations:
- Set your Base URL: In the Web settings tab, you must set the Base URL to your public domain (e.g.
https://dashboard.example.com). This ensures Twitch OAuth redirection validation and secure session cookie scopes align correctly. - Forward standard headers: Configure your reverse proxy to forward standard HTTP headers, specifically the
HostandCookieheaders, so SwiftMiner can validate user sessions. - No WebSockets needed: The dashboard utilizes standard HTTP request polling and API routes, so you do not need to configure connection hijacking or WebSocket upgrades in your proxy configurations.