@@ -148,9 +148,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 3, "name": "Android TV and Fire TV Signage", "item": "https://screentinker.com/guides/digital-signage-android-tv.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 3, "name": "Android TV and Fire TV Signage", "item": "https://swiftdisplay.com/guides/digital-signage-android-tv.html" }
]
}
diff --git a/frontend/guides/open-source-digital-signage.html b/frontend/guides/open-source-digital-signage.html
index 0629d95..7bf891d 100644
--- a/frontend/guides/open-source-digital-signage.html
+++ b/frontend/guides/open-source-digital-signage.html
@@ -3,23 +3,23 @@
@@ -56,23 +56,23 @@
Open Source Digital Signage Software: Free & Self-Hosted (2026)
-
Open source digital signage lets you own your content, skip per-screen subscription fees, and run your screens on your own terms. Here is what it means, why it matters, and how ScreenTinker fits in.
+
Open source digital signage lets you own your content, skip per-screen subscription fees, and run your screens on your own terms. Here is what it means, why it matters, and how SwiftDisplay fits in.
What is open-source digital signage?
Open-source digital signage is signage software whose source code is publicly available under a permissive license, so anyone can inspect, run, modify, and redistribute it. Instead of renting access to a closed cloud platform, you get the actual application - the content management system (CMS) that schedules and pushes content, plus the players that run on your screens.
-
ScreenTinker is an open-source digital signage CMS released under the MIT license . That license is about as permissive as it gets: you can audit the code, fork it, extend it, and deploy it commercially with no strings attached. You can run it as a managed cloud service or self-host it on a server you control - the same codebase either way.
+
SwiftDisplay is an open-source digital signage CMS released under the MIT license . That license is about as permissive as it gets: you can audit the code, fork it, extend it, and deploy it commercially with no strings attached. You can run it as a managed cloud service or self-host it on a server you control - the same codebase either way.
Why choose open source over cloud SaaS?
Data ownership. With a self-hosted open-source deployment, your content, schedules, device list, and logs live on infrastructure you control - not in a vendor's cloud. For healthcare, finance, government, and education, that is often a hard requirement.
- No per-screen fees. Closed SaaS products charge a recurring fee for every screen, typically $5-15/screen/month. Self-hosting ScreenTinker replaces that with a flat server cost - a $5 VPS can run hundreds of screens.
+ No per-screen fees. Closed SaaS products charge a recurring fee for every screen, typically $5-15/screen/month. Self-hosting SwiftDisplay replaces that with a flat server cost - a $5 VPS can run hundreds of screens.
No vendor lock-in. If a cloud vendor raises prices, pivots, or shuts down, your deployment goes with it. With MIT-licensed source you own your copy and control your own roadmap.
Auditable and MIT-licensed. You can read every line, run a security review, and satisfy procurement teams that need to know exactly what runs on the network.
Self-host or cloud. Open source does not force you onto your own servers. Start on the hosted free plan to evaluate, then self-host when you are ready - or stay on the cloud if you prefer managed hosting.
-
What ScreenTinker gives you
-
ScreenTinker is a full digital signage platform, not just a media player. Everything below is in the open-source project:
+
What SwiftDisplay gives you
+
SwiftDisplay is a full digital signage platform, not just a media player. Everything below is in the open-source project:
Content and scheduling: playlists, scheduling and dayparting, content expiry, and multi-zone layouts.
Multi-screen: video walls with multi-screen sync, group sync, kiosk mode, and offline-native playback that keeps running when the network drops.
@@ -87,7 +87,7 @@
- Concern ScreenTinker (open source) Cloud SaaS (Yodeck / ScreenCloud / OptiSigns)
+ Concern SwiftDisplay (open source) Cloud SaaS (Yodeck / ScreenCloud / OptiSigns)
License / source access Open source (MIT) Closed / proprietary
@@ -103,34 +103,34 @@
- How ScreenTinker compares to other open-source options
- ScreenTinker is not the only open-source signage project - the two best-known alternatives are Xibo and Anthias (formerly Screenly OSE).
- vs Xibo: Xibo is open source on the server side, but its player apps are not all free - the Android, Tizen, and webOS players are paid licenses. With ScreenTinker every player is free on every platform. See the ScreenTinker vs Xibo comparison .
- vs Anthias: Anthias is a lightweight single-screen player built for one Raspberry Pi at a time, without a true multi-device fleet CMS. ScreenTinker is a modern multi-device platform - manage Android TV, Fire TV, Tizen, webOS, Vega, Pi, and browsers from one dashboard. See the ScreenTinker vs Anthias comparison .
+ How SwiftDisplay compares to other open-source options
+ SwiftDisplay is not the only open-source signage project - the two best-known alternatives are Xibo and Anthias (formerly Screenly OSE).
+ vs Xibo: Xibo is open source on the server side, but its player apps are not all free - the Android, Tizen, and webOS players are paid licenses. With SwiftDisplay every player is free on every platform. See the SwiftDisplay vs Xibo comparison .
+ vs Anthias: Anthias is a lightweight single-screen player built for one Raspberry Pi at a time, without a true multi-device fleet CMS. SwiftDisplay is a modern multi-device platform - manage Android TV, Fire TV, Tizen, webOS, Vega, Pi, and browsers from one dashboard. See the SwiftDisplay vs Anthias comparison .
Getting started
The fastest path is the hosted free plan - one device, no server to run. When you are ready to self-host, clone the repo:
- git clone https://github.com/screentinker/screentinker.git
-cd screentinker/server
+ git clone https://github.com/swiftdisplay/swiftdisplay.git
+cd swiftdisplay/server
npm install
cp .env.example .env
# edit .env with your domain, JWT_SECRET, and SELF_HOSTED=true
node server.js
- ScreenTinker runs on Node.js with a SQLite database, so a $5 VPS is enough to manage hundreds of screens. Full deployment details are in the GitHub README , and the self-hosted guide walks through reverse proxy, TLS, and backups.
+ SwiftDisplay runs on Node.js with a SQLite database, so a $5 VPS is enough to manage hundreds of screens. Full deployment details are in the GitHub README , and the self-hosted guide walks through reverse proxy, TLS, and backups.
Frequently asked questions
- Is ScreenTinker really free and open source?
- Yes. ScreenTinker is released under the MIT license, so the full source code is public and you can audit, fork, and extend it. Self-hosting is free with unlimited devices; the managed cloud has a free plan plus paid tiers if you prefer hosted convenience.
+ Is SwiftDisplay really free and open source?
+ Yes. SwiftDisplay is released under the MIT license, so the full source code is public and you can audit, fork, and extend it. Self-hosting is free with unlimited devices; the managed cloud has a free plan plus paid tiers if you prefer hosted convenience.
What does the MIT license let me do?
The MIT license lets you run, modify, and redistribute the software - including commercially - with essentially no restrictions beyond keeping the copyright notice. You can build custom widgets, integrate it into your own systems, and white-label it.
Do I have to self-host to use open-source digital signage?
- No. Open source means the code is available if you want it, but you can still use ScreenTinker's managed cloud. Many teams start on the hosted free plan and self-host later once their screen count grows.
+ No. Open source means the code is available if you want it, but you can still use SwiftDisplay's managed cloud. Many teams start on the hosted free plan and self-host later once their screen count grows.
Are all the player apps free?
Yes. Android TV / Fire TV, Samsung Tizen, LG webOS, Amazon Vega OS, Raspberry Pi, and the browser-based web player are all free on every platform, with no per-player license.
- How is ScreenTinker different from Xibo?
- Both are open source on the server, but Xibo charges license fees for its Android, Tizen, and webOS players. ScreenTinker keeps every player free on every platform.
+ How is SwiftDisplay different from Xibo?
+ Both are open source on the server, but Xibo charges license fees for its Android, Tizen, and webOS players. SwiftDisplay keeps every player free on every platform.
How many screens can a self-hosted server handle?
- ScreenTinker runs on Node.js and SQLite, which is efficient. A small $5/month VPS can comfortably manage hundreds of screens; larger fleets just need a bit more CPU, RAM, and storage.
+ SwiftDisplay runs on Node.js and SQLite, which is efficient. A small $5/month VPS can comfortably manage hundreds of screens; larger fleets just need a bit more CPU, RAM, and storage.
@@ -148,14 +148,14 @@ node server.js
Start with open-source signage
Try the hosted free plan in under a minute, or clone the repo and self-host today.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -169,9 +169,9 @@ node server.js
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 3, "name": "Open Source Digital Signage", "item": "https://screentinker.com/guides/open-source-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 3, "name": "Open Source Digital Signage", "item": "https://swiftdisplay.com/guides/open-source-digital-signage.html" }
]
}
@@ -182,8 +182,8 @@ node server.js
"mainEntity": [
{
"@type": "Question",
- "name": "Is ScreenTinker really free and open source?",
- "acceptedAnswer": { "@type": "Answer", "text": "Yes. ScreenTinker is released under the MIT license, so the full source code is public and you can audit, fork, and extend it. Self-hosting is free with unlimited devices; the managed cloud has a free plan plus paid tiers if you prefer hosted convenience." }
+ "name": "Is SwiftDisplay really free and open source?",
+ "acceptedAnswer": { "@type": "Answer", "text": "Yes. SwiftDisplay is released under the MIT license, so the full source code is public and you can audit, fork, and extend it. Self-hosting is free with unlimited devices; the managed cloud has a free plan plus paid tiers if you prefer hosted convenience." }
},
{
"@type": "Question",
@@ -193,7 +193,7 @@ node server.js
{
"@type": "Question",
"name": "Do I have to self-host to use open-source digital signage?",
- "acceptedAnswer": { "@type": "Answer", "text": "No. Open source means the code is available if you want it, but you can still use ScreenTinker's managed cloud. Many teams start on the hosted free plan and self-host later once their screen count grows." }
+ "acceptedAnswer": { "@type": "Answer", "text": "No. Open source means the code is available if you want it, but you can still use SwiftDisplay's managed cloud. Many teams start on the hosted free plan and self-host later once their screen count grows." }
},
{
"@type": "Question",
@@ -202,13 +202,13 @@ node server.js
},
{
"@type": "Question",
- "name": "How is ScreenTinker different from Xibo?",
- "acceptedAnswer": { "@type": "Answer", "text": "Both are open source on the server, but Xibo charges license fees for its Android, Tizen, and webOS players. ScreenTinker keeps every player free on every platform." }
+ "name": "How is SwiftDisplay different from Xibo?",
+ "acceptedAnswer": { "@type": "Answer", "text": "Both are open source on the server, but Xibo charges license fees for its Android, Tizen, and webOS players. SwiftDisplay keeps every player free on every platform." }
},
{
"@type": "Question",
"name": "How many screens can a self-hosted server handle?",
- "acceptedAnswer": { "@type": "Answer", "text": "ScreenTinker runs on Node.js and SQLite, which is efficient. A small $5/month VPS can comfortably manage hundreds of screens; larger fleets just need a bit more CPU, RAM, and storage." }
+ "acceptedAnswer": { "@type": "Answer", "text": "SwiftDisplay runs on Node.js and SQLite, which is efficient. A small $5/month VPS can comfortably manage hundreds of screens; larger fleets just need a bit more CPU, RAM, and storage." }
}
]
}
diff --git a/frontend/guides/raspberry-pi-digital-signage.html b/frontend/guides/raspberry-pi-digital-signage.html
index 13206d1..14edc52 100644
--- a/frontend/guides/raspberry-pi-digital-signage.html
+++ b/frontend/guides/raspberry-pi-digital-signage.html
@@ -3,23 +3,23 @@
-
How to Set Up Digital Signage on Raspberry Pi (2026) | ScreenTinker
-
+
How to Set Up Digital Signage on Raspberry Pi (2026) | SwiftDisplay
+
-
+
-
+
-
-
+
+
-
+
@@ -32,7 +32,7 @@
@@ -56,7 +56,7 @@
How to Set Up Digital Signage on a Raspberry Pi (2026)
-
A step-by-step guide to turning a Raspberry Pi into a free, open-source digital signage player using ScreenTinker. Works on Pi 3, Pi 4, and Pi 5.
+
A step-by-step guide to turning a Raspberry Pi into a free, open-source digital signage player using SwiftDisplay. Works on Pi 3, Pi 4, and Pi 5.
What you will need
@@ -65,7 +65,7 @@
Power supply appropriate for your model (Pi 4 uses USB-C 15W; Pi 5 uses USB-C 27W).
HDMI cable to your TV or monitor (micro-HDMI on Pi 4/5).
Network connection - Ethernet preferred for reliability, Wi-Fi works fine.
- A ScreenTinker account. Sign up free if you do not have one.
+ A SwiftDisplay account. Sign up free if you do not have one.
Step 1: Install Raspberry Pi OS
@@ -79,9 +79,9 @@
Insert the SD card, plug in the Pi, and let it boot through first-time setup.
-
Step 2: Run the ScreenTinker installer
+
Step 2: Run the SwiftDisplay installer
Open a terminal on the Pi and run:
-
curl -sL https://screentinker.com/scripts/raspberry-pi-setup.sh | bash
+
curl -sL https://swiftdisplay.com/scripts/raspberry-pi-setup.sh | bash
The script will:
Install Chromium (the kiosk browser used as the player)
@@ -90,10 +90,10 @@
Configure HDMI to keep the display awake
Reboot the Pi when finished
-
On reboot the Pi will launch directly into the ScreenTinker player and show a 6-digit pairing code.
+
On reboot the Pi will launch directly into the SwiftDisplay player and show a 6-digit pairing code.
Step 3: Pair the Pi to your dashboard
-
Sign in to your ScreenTinker dashboard and click + Add Display . Enter the 6-digit code shown on the Pi and give the display a name (e.g. "Lobby TV"). The Pi will switch from the pairing screen to "Waiting for content".
+
Sign in to your SwiftDisplay dashboard and click + Add Display . Enter the 6-digit code shown on the Pi and give the display a name (e.g. "Lobby TV"). The Pi will switch from the pairing screen to "Waiting for content".
Step 4: Push content
From the dashboard:
@@ -115,7 +115,7 @@
Troubleshooting
The Pi reboots into the desktop, not the player
-
Check that the autostart file ~/.config/autostart/screentinker.desktop exists. The installer creates this; if it's missing, re-run the installer.
+
Check that the autostart file ~/.config/autostart/swiftdisplay.desktop exists. The installer creates this; if it's missing, re-run the installer.
The screen goes dark after a few minutes
The installer should disable screen blanking, but some monitors sleep based on their own timer. Disable sleep mode on the monitor itself, or use a dummy HDMI plug if the Pi negotiates a low-power mode.
@@ -128,23 +128,23 @@
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -158,9 +158,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 3, "name": "Raspberry Pi Digital Signage", "item": "https://screentinker.com/guides/raspberry-pi-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 3, "name": "Raspberry Pi Digital Signage", "item": "https://swiftdisplay.com/guides/raspberry-pi-digital-signage.html" }
]
}
diff --git a/frontend/guides/self-hosted-digital-signage.html b/frontend/guides/self-hosted-digital-signage.html
index d5a830c..0dd70dc 100644
--- a/frontend/guides/self-hosted-digital-signage.html
+++ b/frontend/guides/self-hosted-digital-signage.html
@@ -3,23 +3,23 @@
-
Self-Hosted Digital Signage Software - Complete Guide (2026) | ScreenTinker
-
+
Self-Hosted Digital Signage Software - Complete Guide (2026) | SwiftDisplay
+
-
+
-
+
-
-
+
+
-
+
@@ -32,7 +32,7 @@
@@ -56,7 +56,7 @@
Self-Hosted Digital Signage Software: Complete Guide (2026)
-
Why you might want to self-host your digital signage CMS, what you need to do it well, and how to deploy ScreenTinker on your own server.
+
Why you might want to self-host your digital signage CMS, what you need to do it well, and how to deploy SwiftDisplay on your own server.
Why self-host digital signage?
Most digital signage products are cloud-only. That works for many businesses, but there are real reasons to keep the server in-house:
@@ -86,10 +86,10 @@
SSL certificate (Let's Encrypt is free; or self-signed for LAN)
-
Deploying ScreenTinker
-
Detailed setup is in the GitHub README . Quick version:
-
git clone https://github.com/screentinker/screentinker.git
-cd screentinker/server
+ Deploying SwiftDisplay
+ Detailed setup is in the GitHub README . Quick version:
+ git clone https://github.com/swiftdisplay/swiftdisplay.git
+cd swiftdisplay/server
npm install
cp .env.example .env
# edit .env with your domain, JWT_SECRET, and SELF_HOSTED=true
@@ -97,28 +97,28 @@ node server.js
Set SELF_HOSTED=true in the env. This unlocks the enterprise plan for your account, disables subscription expiry checks, and skips Stripe entirely. It is meant for the operator-controlled deployment case.
Reverse proxy and TLS
- ScreenTinker listens on HTTP/HTTPS directly, but in production you typically front it with nginx or Caddy for TLS termination, gzip, and rate limiting. A minimal Caddyfile:
+ SwiftDisplay listens on HTTP/HTTPS directly, but in production you typically front it with nginx or Caddy for TLS termination, gzip, and rate limiting. A minimal Caddyfile:
signage.example.com {
reverse_proxy localhost:3001
}
Caddy handles Let's Encrypt automatically. nginx works too if your team prefers it.
Running as a service
- Use systemd to keep the process alive across reboots. A unit file at /etc/systemd/system/screentinker.service:
+ Use systemd to keep the process alive across reboots. A unit file at /etc/systemd/system/swiftdisplay.service:
[Unit]
-Description=ScreenTinker Digital Signage Server
+Description=SwiftDisplay Digital Signage Server
After=network.target
[Service]
-WorkingDirectory=/opt/screentinker/server
+WorkingDirectory=/opt/swiftdisplay/server
ExecStart=/usr/bin/node server.js
-EnvironmentFile=/opt/screentinker/.env
+EnvironmentFile=/opt/swiftdisplay/.env
Restart=always
-User=screentinker
+User=swiftdisplay
[Install]
WantedBy=multi-user.target
- Enable with systemctl enable --now screentinker.
+ Enable with systemctl enable --now swiftdisplay.
Backups
The state lives in two places:
@@ -132,7 +132,7 @@ WantedBy=multi-user.target
- Concern ScreenTinker self-hosted Cloud-only signage products
+ Concern SwiftDisplay self-hosted Cloud-only signage products
Data location Your server Vendor's cloud
@@ -149,16 +149,16 @@ WantedBy=multi-user.target
When the cloud is the right answer
- Self-hosting is not free of cost - it requires someone who can run a Linux server, monitor it, and apply security updates. If your screen count is small (under ~10) and you do not have IT capacity, the managed cloud version is probably the right choice. ScreenTinker's hosted plans start at $39/mo for 5 devices.
+ Self-hosting is not free of cost - it requires someone who can run a Linux server, monitor it, and apply security updates. If your screen count is small (under ~10) and you do not have IT capacity, the managed cloud version is probably the right choice. SwiftDisplay's hosted plans start at $39/mo for 5 devices.
@@ -166,14 +166,14 @@ WantedBy=multi-user.target
Try the cloud version first
Use the hosted version to get familiar, then deploy on your own server when you are ready.
Start Free
- View on GitHub
+ View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -187,9 +187,9 @@ WantedBy=multi-user.target
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 3, "name": "Self-Hosted Digital Signage", "item": "https://screentinker.com/guides/self-hosted-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 3, "name": "Self-Hosted Digital Signage", "item": "https://swiftdisplay.com/guides/self-hosted-digital-signage.html" }
]
}
diff --git a/frontend/guides/what-is-digital-signage.html b/frontend/guides/what-is-digital-signage.html
index 3476ed4..72f9844 100644
--- a/frontend/guides/what-is-digital-signage.html
+++ b/frontend/guides/what-is-digital-signage.html
@@ -3,23 +3,23 @@
-
What Is Digital Signage? A Complete Guide (2026) | ScreenTinker
+
What Is Digital Signage? A Complete Guide (2026) | SwiftDisplay
-
+
-
+
-
-
+
+
-
+
@@ -32,7 +32,7 @@
@@ -68,7 +68,7 @@
A player. A small device (or app) connected to the screen that downloads content from the CMS and plays it - even when the network is down.
A display. The TV, monitor, or video wall that people actually see.
-
In ScreenTinker's model, you manage everything from the CMS, and a free player app runs on the screen. You pair a display with a 6-digit code, assign it a playlist, and the player pulls content and plays it. Playback is offline-native: once content is cached, the screen keeps running through network outages.
+
In SwiftDisplay's model, you manage everything from the CMS, and a free player app runs on the screen. You pair a display with a 6-digit code, assign it a playlist, and the player pulls content and plays it. Playback is offline-native: once content is cached, the screen keeps running through network outages.
What can you put on a digital sign?
What hardware do you need?
-
Digital signage needs two things: a screen and a player device to drive it. Almost any modern TV or monitor with an HDMI input works as the screen. For the player, ScreenTinker supports a wide range of free options:
+
Digital signage needs two things: a screen and a player device to drive it. Almost any modern TV or monitor with an HDMI input works as the screen. For the player, SwiftDisplay supports a wide range of free options:
Android TV / Fire TV - a native APK; the most common low-cost choice.
Raspberry Pi - a free setup script turns a Pi into a kiosk player.
@@ -101,11 +101,11 @@
Amazon Vega OS - the newer Fire TV platform.
Windows, ChromeOS, or any browser - the web player runs on hardware you may already own.
-
All ScreenTinker players are free, so hardware is the only cost - and it can be as little as a Raspberry Pi or a budget Android TV stick.
+
All SwiftDisplay players are free, so hardware is the only cost - and it can be as little as a Raspberry Pi or a budget Android TV stick.
How much does digital signage software cost?
-
Pricing splits into two models. Closed cloud SaaS products bill per screen, typically $5-15/screen/month, which adds up quickly across a fleet. Open-source and self-hosted software can be free: with ScreenTinker you can self-host for free with unlimited devices, paying only for a small server (a $5 VPS runs hundreds of screens).
-
If you prefer managed hosting, ScreenTinker's cloud has a Free plan (1 device, 500MB), Starter at $39/mo (5 devices, 5GB), Pro at $99/mo (15 devices, 20GB, all features), and custom Enterprise pricing. Either way, all player apps are free.
+
Pricing splits into two models. Closed cloud SaaS products bill per screen, typically $5-15/screen/month, which adds up quickly across a fleet. Open-source and self-hosted software can be free: with SwiftDisplay you can self-host for free with unlimited devices, paying only for a small server (a $5 VPS runs hundreds of screens).
+
If you prefer managed hosting, SwiftDisplay's cloud has a Free plan (1 device, 500MB), Starter at $39/mo (5 devices, 5GB), Pro at $99/mo (15 devices, 20GB, all features), and custom Enterprise pricing. Either way, all player apps are free.
Digital signage software vs a plain TV
You could plug a USB stick into a TV and loop a video - but that is not digital signage. A signage platform adds the management layer that makes screens practical at scale:
@@ -122,9 +122,9 @@
Do I need special hardware?
Not necessarily. You need a screen and a player device. Almost any TV or monitor with HDMI works, and the player can be an inexpensive Android TV / Fire TV stick, a Raspberry Pi, a compatible Samsung or LG smart TV, or a Windows/ChromeOS device running the web player.
Is there free digital signage software?
-
Yes. ScreenTinker is open-source (MIT licensed) and free to self-host with unlimited devices. There is also a free managed cloud plan for a single device, plus paid tiers if you want hosting managed for you. All player apps are free.
+
Yes. SwiftDisplay is open-source (MIT licensed) and free to self-host with unlimited devices. There is also a free managed cloud plan for a single device, plus paid tiers if you want hosting managed for you. All player apps are free.
Can I run digital signage without internet or offline?
-
Yes. ScreenTinker's playback is offline-native: once a player has cached its content, it keeps playing through network outages. You can also self-host entirely on a private LAN with no internet at all.
+
Yes. SwiftDisplay's playback is offline-native: once a player has cached its content, it keeps playing through network outages. You can also self-host entirely on a private LAN with no internet at all.
What's the difference between digital signage and a smart TV?
A smart TV plays apps or a looping file on that one screen. Digital signage adds a central CMS that schedules content, manages many screens at once, synchronizes video walls, and reports device status - things a standalone smart TV cannot do.
What can you display on digital signage?
@@ -136,24 +136,24 @@
Open source digital signage software: free & self-hosted
Self-hosted digital signage: complete guide
How to set up digital signage on a Raspberry Pi
-
Compare: ScreenTinker vs Xibo
-
Compare: ScreenTinker vs Anthias
-
Compare: ScreenTinker vs Yodeck
+
Compare: SwiftDisplay vs Xibo
+
Compare: SwiftDisplay vs Anthias
+
Compare: SwiftDisplay vs Yodeck
Try digital signage free
-
Start a free ScreenTinker account in under a minute, or self-host the open-source CMS on your own server.
+
Start a free SwiftDisplay account in under a minute, or self-host the open-source CMS on your own server.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -167,9 +167,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 3, "name": "What Is Digital Signage", "item": "https://screentinker.com/guides/what-is-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 3, "name": "What Is Digital Signage", "item": "https://swiftdisplay.com/guides/what-is-digital-signage.html" }
]
}
@@ -191,12 +191,12 @@
{
"@type": "Question",
"name": "Is there free digital signage software?",
- "acceptedAnswer": { "@type": "Answer", "text": "Yes. ScreenTinker is open-source (MIT licensed) and free to self-host with unlimited devices. There is also a free managed cloud plan for a single device, plus paid tiers if you want hosting managed for you. All player apps are free." }
+ "acceptedAnswer": { "@type": "Answer", "text": "Yes. SwiftDisplay is open-source (MIT licensed) and free to self-host with unlimited devices. There is also a free managed cloud plan for a single device, plus paid tiers if you want hosting managed for you. All player apps are free." }
},
{
"@type": "Question",
"name": "Can I run digital signage without internet or offline?",
- "acceptedAnswer": { "@type": "Answer", "text": "Yes. ScreenTinker's playback is offline-native: once a player has cached its content, it keeps playing through network outages. You can also self-host entirely on a private LAN with no internet at all." }
+ "acceptedAnswer": { "@type": "Answer", "text": "Yes. SwiftDisplay's playback is offline-native: once a player has cached its content, it keeps playing through network outages. You can also self-host entirely on a private LAN with no internet at all." }
},
{
"@type": "Question",
diff --git a/frontend/index.html b/frontend/index.html
index c411fd4..77390a4 100644
--- a/frontend/index.html
+++ b/frontend/index.html
@@ -40,7 +40,7 @@
-
+
diff --git a/frontend/integrations/canva-digital-signage.html b/frontend/integrations/canva-digital-signage.html
index 1269505..bef05c8 100644
--- a/frontend/integrations/canva-digital-signage.html
+++ b/frontend/integrations/canva-digital-signage.html
@@ -3,23 +3,23 @@
- How to Display Canva Designs on Digital Signage (2026) | ScreenTinker
-
+ How to Display Canva Designs on Digital Signage (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,17 +56,17 @@
How to display Canva designs on a digital signage screen
-
ScreenTinker has no dedicated "Canva app," and it does not need one. Canva can publish a design as a public website, and ScreenTinker's universal Webpage widget can show that public link on any screen - looping it as a slideshow for lobbies, menus, and announcement boards.
+
SwiftDisplay has no dedicated "Canva app," and it does not need one. Canva can publish a design as a public website, and SwiftDisplay's universal Webpage widget can show that public link on any screen - looping it as a slideshow for lobbies, menus, and announcement boards.
The short version
-
In Canva, open Share → Publish → Website (or Embed ), copy the public link, then add a Webpage widget in ScreenTinker, paste the link, add it to a playlist, and assign the playlist to a screen. That is the entire integration.
+
In Canva, open Share → Publish → Website (or Embed ), copy the public link, then add a Webpage widget in SwiftDisplay, paste the link, add it to a playlist, and assign the playlist to a screen. That is the entire integration.
Step by step
Open your design in Canva and click Share in the top-right.
Choose Publish → Website (or the Embed option). For a multi-page design, pick a navigation style such as Scroll or a presentation layout so all pages are reachable.
Publish the design and copy the public website link (or the src URL from the embed snippet). This is a public URL - not your normal edit link.
- In ScreenTinker, add a Webpage widget. Create or edit a playlist item and select the Webpage widget type.
+ In SwiftDisplay, add a Webpage widget. Create or edit a playlist item and select the Webpage widget type.
Paste the Canva public link into the URL field and save.
Add the widget to a playlist and set a duration long enough to show the whole design.
Assign the playlist to a screen. The player loads the published design and displays it on the wall.
@@ -80,7 +80,7 @@
The edit URL (contains /design/ and /edit) requires a Canva login and blocks framing - it will not appear in the Webpage widget.
The published website / embed URL (from Publish → Website or Embed ) is public and framable. Always use this one.
- As with any embedded page, the deciding factor is X-Frame-Options / frame-ancestors: a page that denies framing cannot be shown in ScreenTinker's Webpage widget, because the widget is an iframe. Canva's published website URL is served to allow embedding; the private edit link is not. If your design does not show up, the URL is the first thing to check.
+ As with any embedded page, the deciding factor is X-Frame-Options / frame-ancestors: a page that denies framing cannot be shown in SwiftDisplay's Webpage widget, because the widget is an iframe. Canva's published website URL is served to allow embedding; the private edit link is not. If your design does not show up, the URL is the first thing to check.
Auto-advance and refresh tips
@@ -105,7 +105,7 @@
Not always automatically. Canva may keep serving the previously published version, so re-publish after edits to make sure the screen loads the latest.
Is there a native Canva widget?
- No - this uses the universal Webpage widget with the design's published website URL. That is the supported way to show Canva on ScreenTinker.
+ No - this uses the universal Webpage widget with the design's published website URL. That is the supported way to show Canva on SwiftDisplay.
Related guides
@@ -119,17 +119,17 @@
-
Try ScreenTinker free
+
Try SwiftDisplay free
Add a Webpage widget, paste your published Canva link, and see it on a screen in minutes. Free plan, no credit card required.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -143,9 +143,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "Canva", "item": "https://screentinker.com/integrations/canva-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "Canva", "item": "https://swiftdisplay.com/integrations/canva-digital-signage.html" }
]
}
@@ -158,7 +158,7 @@
{ "@type": "Question", "name": "Does the design have to be public?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Only a published, public Canva design embeds. Private designs are login-gated and cannot be shown on an unattended signage player." } },
{ "@type": "Question", "name": "Can I loop a multi-page design as a slideshow?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Choose a presentation or autoplay publish option so the pages advance automatically and loop, then set the widget duration to cover the full cycle." } },
{ "@type": "Question", "name": "Will the screen update when I change the design?", "acceptedAnswer": { "@type": "Answer", "text": "Not always automatically. Canva may keep serving the previously published version, so re-publish after edits to make sure the screen loads the latest." } },
- { "@type": "Question", "name": "Is there a native Canva widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with the design's published website URL. That is the supported way to show Canva on ScreenTinker." } }
+ { "@type": "Question", "name": "Is there a native Canva widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with the design's published website URL. That is the supported way to show Canva on SwiftDisplay." } }
]
}
diff --git a/frontend/integrations/google-slides-digital-signage.html b/frontend/integrations/google-slides-digital-signage.html
index 3d14a21..1f0d7e2 100644
--- a/frontend/integrations/google-slides-digital-signage.html
+++ b/frontend/integrations/google-slides-digital-signage.html
@@ -3,23 +3,23 @@
-
How to Put Google Slides on Digital Signage (2026) | ScreenTinker
-
+
How to Put Google Slides on Digital Signage (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,17 +56,17 @@
How to put Google Slides on a digital signage screen
-
ScreenTinker does not have a dedicated "Google Slides app" - and it does not need one. Google Slides can publish a deck to the web, and ScreenTinker's universal Webpage widget can display that published URL on any screen, auto-advancing through the slides on a loop.
+
SwiftDisplay does not have a dedicated "Google Slides app" - and it does not need one. Google Slides can publish a deck to the web, and SwiftDisplay's universal Webpage widget can display that published URL on any screen, auto-advancing through the slides on a loop.
The short version
-
In Google Slides, go to File → Share → Publish to web → Embed , set the auto-advance interval, and copy the published URL. In ScreenTinker, add a Webpage widget, paste that URL, drop the widget into a playlist, and assign the playlist to a screen. That is the whole integration.
+
In Google Slides, go to File → Share → Publish to web → Embed , set the auto-advance interval, and copy the published URL. In SwiftDisplay, add a Webpage widget, paste that URL, drop the widget into a playlist, and assign the playlist to a screen. That is the whole integration.
Step by step
Open your deck in Google Slides and choose File → Share → Publish to web .
Switch to the "Embed" tab. Pick how fast slides should advance (for example, every 5 seconds) and tick Auto-advance and Restart the slideshow after the last slide so it loops forever.
Click Publish and confirm. Copy the published URL from the embed snippet - it is the src value that looks like the one below, not your normal editing link.
- In ScreenTinker, add a Webpage widget. Open your dashboard, create or edit a playlist item, and choose the Webpage widget type.
+ In SwiftDisplay, add a Webpage widget. Open your dashboard, create or edit a playlist item, and choose the Webpage widget type.
Paste the published URL into the widget's URL field and save.
Add the widget to a playlist and set its duration to at least one full loop of the deck.
Assign the playlist to a screen. The player pulls the published deck and it starts advancing on the wall.
@@ -81,14 +81,14 @@
The /present URL (ends in /present) is presenter mode and also blocks framing.
The published URL from Publish to web (contains /pub or /pubembed) is the only one that permits embedding. Always use this one.
- The reason is X-Frame-Options / frame-ancestors: any page that sends those headers to deny framing cannot be shown in an iframe, and ScreenTinker's Webpage widget is an iframe. The published URL is served without that restriction specifically so it can be embedded. If your slides do not appear, the URL is almost always the cause.
+ The reason is X-Frame-Options / frame-ancestors: any page that sends those headers to deny framing cannot be shown in an iframe, and SwiftDisplay's Webpage widget is an iframe. The published URL is served without that restriction specifically so it can be embedded. If your slides do not appear, the URL is almost always the cause.
Auto-advance and refresh tips
- Set the pace in Slides, not ScreenTinker. The delayms parameter in the published URL controls how long each slide holds. Adjust it by re-publishing with a different interval, or edit the delayms value directly in the URL (milliseconds).
+ Set the pace in Slides, not SwiftDisplay. The delayms parameter in the published URL controls how long each slide holds. Adjust it by re-publishing with a different interval, or edit the delayms value directly in the URL (milliseconds).
Keep loop=true so the deck restarts after the last slide and never goes blank.
Give the playlist item enough time. Set the Webpage widget's on-screen duration to at least the length of one full loop so viewers see every slide.
- Content updates are automatic-ish. When you edit the source deck, Google re-publishes changes to the published URL within a short window (usually a few minutes), so the sign updates without touching ScreenTinker.
+ Content updates are automatic-ish. When you edit the source deck, Google re-publishes changes to the published URL within a short window (usually a few minutes), so the sign updates without touching SwiftDisplay.
FAQ
@@ -103,10 +103,10 @@
Yes. Enable auto-advance when you publish and set the interval; the delayms and loop parameters in the published URL handle timing and looping.
Will the sign update when I edit the deck?
- Yes, on a short delay. Google re-publishes edits to the published URL automatically, so the screen picks up changes without any change in ScreenTinker.
+ Yes, on a short delay. Google re-publishes edits to the published URL automatically, so the screen picks up changes without any change in SwiftDisplay.
Is there a native Google Slides widget?
- No - this uses the universal Webpage widget with the deck's published URL. That is the supported and reliable way to show Slides on ScreenTinker.
+ No - this uses the universal Webpage widget with the deck's published URL. That is the supported and reliable way to show Slides on SwiftDisplay.
Related guides
@@ -120,17 +120,17 @@
-
Try ScreenTinker free
+
Try SwiftDisplay free
Add a Webpage widget, paste your published deck, and see it on a screen in minutes. Free plan, no credit card required.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -144,9 +144,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "Google Slides", "item": "https://screentinker.com/integrations/google-slides-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "Google Slides", "item": "https://swiftdisplay.com/integrations/google-slides-digital-signage.html" }
]
}
@@ -158,8 +158,8 @@
{ "@type": "Question", "name": "Why won't my Google Slides link show up on the screen?", "acceptedAnswer": { "@type": "Answer", "text": "You almost certainly pasted the /edit or /present URL. Those require a login and block framing. Go back to File > Share > Publish to web and copy the published /pubembed URL instead." } },
{ "@type": "Question", "name": "Do viewers need a Google account to see the deck?", "acceptedAnswer": { "@type": "Answer", "text": "No. A published-to-web deck is public and renders without any login, which is why it works on an unattended signage player." } },
{ "@type": "Question", "name": "Can I make the slides advance automatically?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Enable auto-advance when you publish and set the interval; the delayms and loop parameters in the published URL handle timing and looping." } },
- { "@type": "Question", "name": "Will the sign update when I edit the deck?", "acceptedAnswer": { "@type": "Answer", "text": "Yes, on a short delay. Google re-publishes edits to the published URL automatically, so the screen picks up changes without any change in ScreenTinker." } },
- { "@type": "Question", "name": "Is there a native Google Slides widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with the deck's published URL. That is the supported and reliable way to show Slides on ScreenTinker." } }
+ { "@type": "Question", "name": "Will the sign update when I edit the deck?", "acceptedAnswer": { "@type": "Answer", "text": "Yes, on a short delay. Google re-publishes edits to the published URL automatically, so the screen picks up changes without any change in SwiftDisplay." } },
+ { "@type": "Question", "name": "Is there a native Google Slides widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with the deck's published URL. That is the supported and reliable way to show Slides on SwiftDisplay." } }
]
}
diff --git a/frontend/integrations/index.html b/frontend/integrations/index.html
index 4170c6f..7396264 100644
--- a/frontend/integrations/index.html
+++ b/frontend/integrations/index.html
@@ -3,23 +3,23 @@
-
Digital Signage Integrations - Connect Any App | ScreenTinker
-
-
+
Digital Signage Integrations - Connect Any App | SwiftDisplay
+
+
-
+
-
-
+
+
-
-
+
+
-
+
@@ -32,7 +32,7 @@
@@ -54,10 +54,10 @@
Digital Signage Integrations
-
ScreenTinker connects to the tools you already use in two ways: purpose-built native widgets for common content types, and a universal Webpage widget that embeds any public web page on your screens. Between the two, most apps that can produce a public link can appear on a ScreenTinker display.
+
SwiftDisplay connects to the tools you already use in two ways: purpose-built native widgets for common content types, and a universal Webpage widget that embeds any public web page on your screens. Between the two, most apps that can produce a public link can appear on a SwiftDisplay display.
Native widgets
-
These are built directly into ScreenTinker. You configure them in the dashboard - no embed URL required - and they render natively on every player (Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player).
+
These are built directly into SwiftDisplay. You configure them in the dashboard - no embed URL required - and they render natively on every player (Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player).
YouTube . Play a single video, a playlist, or a live stream, with autoplay and loop handled for you.
RSS . Pull headlines from any feed - news, blogs, internal announcements - and rotate them on screen.
@@ -69,7 +69,7 @@
Embed anything with the Webpage widget
-
The Webpage widget renders any framable public URL inside an iframe on your screen. If a service can publish a public link and does not block framing, you can put it on a display - no dedicated integration needed. This is how you connect apps that ScreenTinker does not have a native widget for.
+
The Webpage widget renders any framable public URL inside an iframe on your screen. If a service can publish a public link and does not block framing, you can put it on a display - no dedicated integration needed. This is how you connect apps that SwiftDisplay does not have a native widget for.
Honest caveat: sites that send X-Frame-Options or a frame-ancestors Content-Security-Policy that denies embedding cannot be shown in the Webpage widget. You must use each service's official "publish to web" / "embed" URL - not the normal share, edit, or present URL - because the published URL is the one that permits framing.
Google Slides . Publish a deck to the web and auto-advance it as an announcement board.
@@ -82,11 +82,11 @@
Frequently asked questions
- Can ScreenTinker integrate with a specific app?
+ Can SwiftDisplay integrate with a specific app?
If the app has a native widget above, use that. Otherwise: if the app can produce a public embed or "publish to web" URL that allows framing, then yes - add a Webpage widget and paste that URL. If the only URL the app offers denies framing, it cannot be embedded, and you would need a screenshot, export, or a native widget instead.
What is the difference between a native widget and the Webpage widget?
- Native widgets are built into ScreenTinker and configured with a few fields in the dashboard; they render reliably on every player. The Webpage widget is a generic iframe - more flexible, since it can show almost any public page, but subject to the framing rules of the site you point it at.
+ Native widgets are built into SwiftDisplay and configured with a few fields in the dashboard; they render reliably on every player. The Webpage widget is a generic iframe - more flexible, since it can show almost any public page, but subject to the framing rules of the site you point it at.
Do I need a paid plan to use integrations?
No. Native widgets and the Webpage widget are available on the free plan and in self-hosted deployments. Plans differ by device count and storage, not by which widgets you can use.
@@ -103,17 +103,17 @@
-
Try ScreenTinker free
+
Try SwiftDisplay free
Add a widget, drop in a URL, and see it on a screen in minutes. Free plan, no credit card required.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -127,8 +127,8 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" }
]
}
diff --git a/frontend/integrations/power-bi-digital-signage.html b/frontend/integrations/power-bi-digital-signage.html
index 55b8674..8c9850d 100644
--- a/frontend/integrations/power-bi-digital-signage.html
+++ b/frontend/integrations/power-bi-digital-signage.html
@@ -3,23 +3,23 @@
-
Power BI Dashboards on Digital Signage (2026) | ScreenTinker
-
+
Power BI Dashboards on Digital Signage (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,17 +56,17 @@
How to put a Power BI dashboard on a digital signage screen
-
ScreenTinker has no dedicated "Power BI app," and it does not need one. Power BI can produce an embeddable public URL with "Publish to web," and ScreenTinker's universal Webpage widget can display that live, self-refreshing report on a wall - as long as you understand the security trade-off first.
+
SwiftDisplay has no dedicated "Power BI app," and it does not need one. Power BI can produce an embeddable public URL with "Publish to web," and SwiftDisplay's universal Webpage widget can display that live, self-refreshing report on a wall - as long as you understand the security trade-off first.
The short version
-
In Power BI, use File → Embed report → Publish to web (public) to generate an embeddable URL, then add a Webpage widget in ScreenTinker, paste the URL, add it to a playlist, and assign it to a screen. Because "Publish to web" makes the report public , only do this for non-confidential data.
+
In Power BI, use File → Embed report → Publish to web (public) to generate an embeddable URL, then add a Webpage widget in SwiftDisplay, paste the URL, add it to a playlist, and assign it to a screen. Because "Publish to web" makes the report public , only do this for non-confidential data.
Step by step
Open the report in the Power BI service (app.powerbi.com).
Confirm the data is safe to make public. "Publish to web" exposes the report to anyone with the link - see the caveat below before continuing.
Choose File → Embed report → Publish to web (public). Create the embed code and copy the link (the standalone URL, not just the <iframe> snippet).
- In ScreenTinker, add a Webpage widget. Create or edit a playlist item and select the Webpage widget type.
+ In SwiftDisplay, add a Webpage widget. Create or edit a playlist item and select the Webpage widget type.
Paste the Publish-to-web URL into the widget's URL field and save.
Add the widget to a playlist and set a comfortable on-screen duration.
Assign the playlist to a screen. The player loads the report and it refreshes on its own schedule.
@@ -80,15 +80,15 @@
Publish to web (public) produces a URL (app.powerbi.com/view?r=...) that anyone can open with no login and that is allowed to be framed. This is the one that works on signage.
Embed (for your organization) requires each viewer to sign in with a Microsoft Entra / Azure AD account. A signage player has no one to complete that login, so this path generally will not display on an unattended screen - it will show a sign-in wall instead.
- The underlying reason is the same as every embed: pages that send X-Frame-Options / frame-ancestors to deny framing, or that demand authentication, cannot render in ScreenTinker's Webpage widget (it is an iframe). Publish-to-web is served specifically to be publicly embeddable; the org embed and the normal report URL are not.
+ The underlying reason is the same as every embed: pages that send X-Frame-Options / frame-ancestors to deny framing, or that demand authentication, cannot render in SwiftDisplay's Webpage widget (it is an iframe). Publish-to-web is served specifically to be publicly embeddable; the org embed and the normal report URL are not.
Security caveat: Publish to web makes the report public
This matters, so it gets its own section. "Publish to web" exposes your report and its underlying data to anyone who has the link - no authentication, no row-level security, indexable by search engines in some cases. Do not use it for confidential, personal, financial, or otherwise sensitive data. Many organizations disable Publish to web in the Power BI admin portal for exactly this reason.
- If the dashboard contains anything private, do not put it on a public URL. The safer pattern for confidential dashboards is to self-host ScreenTinker on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL that never leaves your network. Reserve Publish to web for genuinely public metrics - marketing stats, public KPIs, community dashboards, and the like.
+ If the dashboard contains anything private, do not put it on a public URL. The safer pattern for confidential dashboards is to self-host SwiftDisplay on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL that never leaves your network. Reserve Publish to web for genuinely public metrics - marketing stats, public KPIs, community dashboards, and the like.
Auto-refresh tips
- Refresh is driven by Power BI, not ScreenTinker. A Publish-to-web report updates on Power BI's cached schedule (typically about hourly, and roughly every few minutes for visuals in an open view). Design expectations around that cadence rather than expecting real-time.
+ Refresh is driven by Power BI, not SwiftDisplay. A Publish-to-web report updates on Power BI's cached schedule (typically about hourly, and roughly every few minutes for visuals in an open view). Design expectations around that cadence rather than expecting real-time.
Match your dataset refresh schedule. The screen can only be as fresh as the dataset behind it, so set the dataset's scheduled refresh to the fastest cadence your source and license allow.
Reload periodically if needed. For long-running displays, rotating the report through a playlist (so the widget reloads on each cycle) helps ensure the latest cached view is fetched.
Design for the wall. Build a report page sized for your display and hide slicers/filters the audience cannot interact with, so the unattended view stays clean.
@@ -100,7 +100,7 @@
You probably used the normal report URL or the "Embed for your organization" link, both of which require a Microsoft login. Use Publish to web (public) and paste that app.powerbi.com/view?r=... URL instead.
Is it safe to put a Power BI dashboard on signage?
- Only if the data is non-confidential. "Publish to web" makes the report public to anyone with the link. For private data, self-host ScreenTinker on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL instead.
+ Only if the data is non-confidential. "Publish to web" makes the report public to anyone with the link. For private data, self-host SwiftDisplay on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL instead.
Can I use "Embed for your organization" on a screen?
Generally no. That path requires each viewer to sign in with an organizational account, and an unattended signage player cannot complete that login - it will show a sign-in wall.
@@ -109,7 +109,7 @@
On Power BI's cached schedule for Publish-to-web (roughly hourly, with visuals updating every few minutes in an open view), and never fresher than the dataset's own scheduled refresh.
Is there a native Power BI widget?
- No - this uses the universal Webpage widget with a Publish-to-web URL. That is the supported way to show Power BI on ScreenTinker.
+ No - this uses the universal Webpage widget with a Publish-to-web URL. That is the supported way to show Power BI on SwiftDisplay.
Related guides
@@ -123,17 +123,17 @@
-
Try ScreenTinker free
+
Try SwiftDisplay free
Add a Webpage widget, paste a Publish-to-web URL, and see your dashboard on a screen in minutes. Free plan, no credit card required.
Start Free
-
View on GitHub
+
View on GitHub
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -147,9 +147,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "Power BI", "item": "https://screentinker.com/integrations/power-bi-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "Power BI", "item": "https://swiftdisplay.com/integrations/power-bi-digital-signage.html" }
]
}
@@ -159,10 +159,10 @@
"@type": "FAQPage",
"mainEntity": [
{ "@type": "Question", "name": "Why won't my Power BI report show up on the screen?", "acceptedAnswer": { "@type": "Answer", "text": "You probably used the normal report URL or the Embed for your organization link, both of which require a Microsoft login. Use Publish to web (public) and paste that app.powerbi.com/view?r=... URL instead." } },
- { "@type": "Question", "name": "Is it safe to put a Power BI dashboard on signage?", "acceptedAnswer": { "@type": "Answer", "text": "Only if the data is non-confidential. Publish to web makes the report public to anyone with the link. For private data, self-host ScreenTinker on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL instead." } },
+ { "@type": "Question", "name": "Is it safe to put a Power BI dashboard on signage?", "acceptedAnswer": { "@type": "Answer", "text": "Only if the data is non-confidential. Publish to web makes the report public to anyone with the link. For private data, self-host SwiftDisplay on a trusted LAN and point the Webpage widget at an internal, network-restricted dashboard URL instead." } },
{ "@type": "Question", "name": "Can I use Embed for your organization on a screen?", "acceptedAnswer": { "@type": "Answer", "text": "Generally no. That path requires each viewer to sign in with an organizational account, and an unattended signage player cannot complete that login - it will show a sign-in wall." } },
{ "@type": "Question", "name": "How often does the dashboard refresh?", "acceptedAnswer": { "@type": "Answer", "text": "On Power BI's cached schedule for Publish-to-web (roughly hourly, with visuals updating every few minutes in an open view), and never fresher than the dataset's own scheduled refresh." } },
- { "@type": "Question", "name": "Is there a native Power BI widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with a Publish-to-web URL. That is the supported way to show Power BI on ScreenTinker." } }
+ { "@type": "Question", "name": "Is there a native Power BI widget?", "acceptedAnswer": { "@type": "Answer", "text": "No - this uses the universal Webpage widget with a Publish-to-web URL. That is the supported way to show Power BI on SwiftDisplay." } }
]
}
diff --git a/frontend/integrations/rss-digital-signage.html b/frontend/integrations/rss-digital-signage.html
index 454c631..28e0769 100644
--- a/frontend/integrations/rss-digital-signage.html
+++ b/frontend/integrations/rss-digital-signage.html
@@ -3,23 +3,23 @@
-
RSS Feeds on Digital Signage - News Tickers (2026) | ScreenTinker
-
+
RSS Feeds on Digital Signage - News Tickers (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,14 +56,14 @@
RSS Feeds on Digital Signage: News Tickers & Headlines
-
ScreenTinker has a native RSS widget. Point it at a feed URL and it renders live headlines on screen - perfect for a news ticker, blog headlines, or an internal announcement board.
+
SwiftDisplay has a native RSS widget. Point it at a feed URL and it renders live headlines on screen - perfect for a news ticker, blog headlines, or an internal announcement board.
The short version
The RSS widget is built in - no plugins or embeds. You give it a feed URL like https://example.com/feed.xml and it pulls the latest items and renders the headlines on screen. Because it is a configurable widget, you can add it to playlists and layouts, and it can share a multi-zone layout with your main content so headlines run alongside images or video.
Step by step
- Open the Content Library (or the layout editor) in your ScreenTinker dashboard.
+ Open the Content Library (or the layout editor) in your SwiftDisplay dashboard.
Add the RSS widget.
Configure it with your feed URL, for example https://example.com/feed.xml. The widget fetches the feed and renders the current headlines.
Add the RSS widget to a Playlist , or place it in a zone of a multi-zone layout next to your other content.
@@ -82,7 +82,7 @@
FAQ
Is the RSS widget really built in?
- Yes. RSS is a native ScreenTinker widget - you configure a feed URL and it renders headlines. There is no third-party plugin or embed code to manage.
+ Yes. RSS is a native SwiftDisplay widget - you configure a feed URL and it renders headlines. There is no third-party plugin or embed code to manage.
What kind of feed URL do I use?
A standard RSS or Atom feed URL, such as https://example.com/feed.xml. Most blogs, news sites, CMSes, and status pages publish one.
@@ -93,13 +93,13 @@
Can I use an internal or private feed?
The widget fetches a feed URL, so any feed the player can reach works - including an internal feed on your network for a self-hosted deployment. Publish your announcements as RSS and point the widget at that URL.
- Does it work on all ScreenTinker players?
+ Does it work on all SwiftDisplay players?
Yes. The RSS widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free.
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -132,9 +132,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "RSS on Digital Signage", "item": "https://screentinker.com/integrations/rss-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "RSS on Digital Signage", "item": "https://swiftdisplay.com/integrations/rss-digital-signage.html" }
]
}
@@ -143,11 +143,11 @@
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
- { "@type": "Question", "name": "Is the RSS widget really built in?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. RSS is a native ScreenTinker widget - you configure a feed URL and it renders headlines. There is no third-party plugin or embed code to manage." } },
+ { "@type": "Question", "name": "Is the RSS widget really built in?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. RSS is a native SwiftDisplay widget - you configure a feed URL and it renders headlines. There is no third-party plugin or embed code to manage." } },
{ "@type": "Question", "name": "What kind of feed URL do I use?", "acceptedAnswer": { "@type": "Answer", "text": "A standard RSS or Atom feed URL, such as https://example.com/feed.xml. Most blogs, news sites, CMSes, and status pages publish one." } },
{ "@type": "Question", "name": "Can the RSS ticker share the screen with other content?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Place the RSS widget in one zone of a multi-zone layout and your main content in another. Headlines and your primary message then display at the same time." } },
{ "@type": "Question", "name": "Can I use an internal or private feed?", "acceptedAnswer": { "@type": "Answer", "text": "The widget fetches a feed URL, so any feed the player can reach works - including an internal feed on your network for a self-hosted deployment. Publish your announcements as RSS and point the widget at that URL." } },
- { "@type": "Question", "name": "Does it work on all ScreenTinker players?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. The RSS widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
+ { "@type": "Question", "name": "Does it work on all SwiftDisplay players?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. The RSS widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
]
}
diff --git a/frontend/integrations/weather-digital-signage.html b/frontend/integrations/weather-digital-signage.html
index b6e9a8c..6df48b5 100644
--- a/frontend/integrations/weather-digital-signage.html
+++ b/frontend/integrations/weather-digital-signage.html
@@ -3,23 +3,23 @@
-
Weather Widget for Digital Signage (2026) | ScreenTinker
-
+
Weather Widget for Digital Signage (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,14 +56,14 @@
Weather Widget for Digital Signage
-
ScreenTinker has a native weather widget. Set a location, optionally a timezone, and it shows current conditions on screen - a lobby-board staple next to a clock and your main content.
+
SwiftDisplay has a native weather widget. Set a location, optionally a timezone, and it shows current conditions on screen - a lobby-board staple next to a clock and your main content.
The short version
The weather widget is built in. You configure a location and, if you want, a timezone, and it renders current conditions on the display. It is most often placed in a multi-zone layout alongside a clock and a main content area to make a clean reception or lobby board.
Step by step
- Open the Content Library (or the layout editor) in your ScreenTinker dashboard.
+ Open the Content Library (or the layout editor) in your SwiftDisplay dashboard.
Add the Weather widget.
Configure it with your location , and optionally set a timezone . The widget renders current conditions for that location.
Add the widget to a Playlist , or place it in a zone of a multi-zone layout next to a clock and your main content.
@@ -72,7 +72,7 @@
Tips & use cases
- Pair it with a Clock. ScreenTinker's native Clock widget plus the weather widget is the classic lobby combo - people glance up for the time and today's conditions.
+ Pair it with a Clock. SwiftDisplay's native Clock widget plus the weather widget is the classic lobby combo - people glance up for the time and today's conditions.
Reception and lobby boards. A multi-zone layout with weather in a corner, a clock, and a main zone for announcements or a welcome message makes a polished front-of-house display.
Set the location correctly. Configure the location for where the screen physically lives so staff and visitors see local conditions.
Set the timezone when it matters. If you run screens across regions, set the timezone so a paired clock and any time-based content line up with the local site.
@@ -82,7 +82,7 @@
FAQ
Is the weather widget built in?
- Yes. Weather is a native ScreenTinker widget. You configure a location (and optionally a timezone) and it renders current conditions - no third-party embed required.
+ Yes. Weather is a native SwiftDisplay widget. You configure a location (and optionally a timezone) and it renders current conditions - no third-party embed required.
What do I configure?
A location, and optionally a timezone. That is enough for the widget to show current conditions on screen.
@@ -93,13 +93,13 @@
Can I show different weather on different screens?
Yes. Configure a layout per location with that site's location set, then assign each layout to the screens at that site.
- Does it work on all ScreenTinker players?
+ Does it work on all SwiftDisplay players?
Yes. The weather widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free.
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -132,9 +132,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "Weather on Digital Signage", "item": "https://screentinker.com/integrations/weather-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "Weather on Digital Signage", "item": "https://swiftdisplay.com/integrations/weather-digital-signage.html" }
]
}
@@ -143,11 +143,11 @@
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
- { "@type": "Question", "name": "Is the weather widget built in?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Weather is a native ScreenTinker widget. You configure a location (and optionally a timezone) and it renders current conditions - no third-party embed required." } },
+ { "@type": "Question", "name": "Is the weather widget built in?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Weather is a native SwiftDisplay widget. You configure a location (and optionally a timezone) and it renders current conditions - no third-party embed required." } },
{ "@type": "Question", "name": "What do I configure?", "acceptedAnswer": { "@type": "Answer", "text": "A location, and optionally a timezone. That is enough for the widget to show current conditions on screen." } },
{ "@type": "Question", "name": "Can I show weather and a clock together?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. The Clock is also a native widget. Put both into a multi-zone layout - weather in one zone, clock in another, main content in a third - for a lobby or reception board." } },
{ "@type": "Question", "name": "Can I show different weather on different screens?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Configure a layout per location with that site's location set, then assign each layout to the screens at that site." } },
- { "@type": "Question", "name": "Does it work on all ScreenTinker players?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. The weather widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
+ { "@type": "Question", "name": "Does it work on all SwiftDisplay players?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. The weather widget runs on Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
]
}
diff --git a/frontend/integrations/youtube-digital-signage.html b/frontend/integrations/youtube-digital-signage.html
index 9c976a9..9c86883 100644
--- a/frontend/integrations/youtube-digital-signage.html
+++ b/frontend/integrations/youtube-digital-signage.html
@@ -3,23 +3,23 @@
-
How to Display YouTube on Digital Signage (2026) | ScreenTinker
-
+
How to Display YouTube on Digital Signage (2026) | SwiftDisplay
+
-
+
-
+
-
-
-
+
+
+
-
-
+
+
@@ -32,7 +32,7 @@
@@ -56,14 +56,14 @@
How to Display YouTube Videos on Digital Signage
-
YouTube is a built-in content type in ScreenTinker. Paste a video URL, give it a name, and it plays on your screens like any other media - no embed code, no browser hacks.
+
YouTube is a built-in content type in SwiftDisplay. Paste a video URL, give it a name, and it plays on your screens like any other media - no embed code, no browser hacks.
The short version
-
ScreenTinker has a native YouTube widget, so you do not need to download videos or wire up a browser workaround. In the Content Library you choose Add YouTube , paste the video URL, give it a name, and it becomes a library item you can drop into any playlist, schedule, and assign to screens. On the display it plays muted (browser autoplay policy) using YouTube's iframe player.
+
SwiftDisplay has a native YouTube widget, so you do not need to download videos or wire up a browser workaround. In the Content Library you choose Add YouTube , paste the video URL, give it a name, and it becomes a library item you can drop into any playlist, schedule, and assign to screens. On the display it plays muted (browser autoplay policy) using YouTube's iframe player.
Step by step
- Open the Content Library in your ScreenTinker dashboard.
+ Open the Content Library in your SwiftDisplay dashboard.
Click Add YouTube and paste the YouTube video URL (for example https://www.youtube.com/watch?v=...).
Give the item a name so you can find it later - something like "Brand reel" or "Product loop."
Save it. The video now appears in your library alongside images and uploaded video. The dashboard preview plays it muted so autoplay works.
@@ -83,7 +83,7 @@
FAQ
Do I need to download the YouTube video first?
- No. The YouTube widget is native - you paste the video URL and ScreenTinker's player streams it through YouTube's iframe player. There is nothing to download or re-upload.
+ No. The YouTube widget is native - you paste the video URL and SwiftDisplay's player streams it through YouTube's iframe player. There is nothing to download or re-upload.
Why does the video play without sound?
Browsers require muted playback for autoplay to work reliably, so YouTube content plays muted on the display and in the dashboard preview. Choose videos that work as silent visuals or that have burned-in captions.
@@ -92,15 +92,15 @@
Yes. Put the YouTube item in a playlist on its own (or with a short rotation) and assign that playlist to the screen. The playlist repeats, so the video loops.
Can I schedule YouTube content to specific times?
- Yes. YouTube items schedule exactly like images and uploaded video - assign the playlist to a daypart or specific screens using ScreenTinker's scheduling.
+ Yes. YouTube items schedule exactly like images and uploaded video - assign the playlist to a daypart or specific screens using SwiftDisplay's scheduling.
Does this work on every player?
- The YouTube widget works on ScreenTinker's players - Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free.
+ The YouTube widget works on SwiftDisplay's players - Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free.
- © 2026 ScreenTinker. All rights reserved.
+ © 2026 SwiftDisplay. All rights reserved.
-
GitHub
+
GitHub
Discord
Terms
Privacy
@@ -133,9 +133,9 @@
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
- { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://screentinker.com/" },
- { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://screentinker.com/integrations/" },
- { "@type": "ListItem", "position": 3, "name": "YouTube on Digital Signage", "item": "https://screentinker.com/integrations/youtube-digital-signage.html" }
+ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://swiftdisplay.com/" },
+ { "@type": "ListItem", "position": 2, "name": "Integrations", "item": "https://swiftdisplay.com/integrations/" },
+ { "@type": "ListItem", "position": 3, "name": "YouTube on Digital Signage", "item": "https://swiftdisplay.com/integrations/youtube-digital-signage.html" }
]
}
@@ -144,11 +144,11 @@
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
- { "@type": "Question", "name": "Do I need to download the YouTube video first?", "acceptedAnswer": { "@type": "Answer", "text": "No. The YouTube widget is native - you paste the video URL and ScreenTinker's player streams it through YouTube's iframe player. There is nothing to download or re-upload." } },
+ { "@type": "Question", "name": "Do I need to download the YouTube video first?", "acceptedAnswer": { "@type": "Answer", "text": "No. The YouTube widget is native - you paste the video URL and SwiftDisplay's player streams it through YouTube's iframe player. There is nothing to download or re-upload." } },
{ "@type": "Question", "name": "Why does the video play without sound?", "acceptedAnswer": { "@type": "Answer", "text": "Browsers require muted playback for autoplay to work reliably, so YouTube content plays muted on the display and in the dashboard preview. Choose videos that work as silent visuals or that have burned-in captions." } },
{ "@type": "Question", "name": "Can I loop a single YouTube video all day?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. Put the YouTube item in a playlist on its own (or with a short rotation) and assign that playlist to the screen. The playlist repeats, so the video loops." } },
- { "@type": "Question", "name": "Can I schedule YouTube content to specific times?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. YouTube items schedule exactly like images and uploaded video - assign the playlist to a daypart or specific screens using ScreenTinker's scheduling." } },
- { "@type": "Question", "name": "Does this work on every player?", "acceptedAnswer": { "@type": "Answer", "text": "The YouTube widget works on ScreenTinker's players - Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
+ { "@type": "Question", "name": "Can I schedule YouTube content to specific times?", "acceptedAnswer": { "@type": "Answer", "text": "Yes. YouTube items schedule exactly like images and uploaded video - assign the playlist to a daypart or specific screens using SwiftDisplay's scheduling." } },
+ { "@type": "Question", "name": "Does this work on every player?", "acceptedAnswer": { "@type": "Answer", "text": "The YouTube widget works on SwiftDisplay's players - Android TV, Fire TV, Tizen, webOS, Vega, Raspberry Pi, Windows, ChromeOS, and the browser player - all free." } }
]
}
diff --git a/frontend/js/brand-prime.js b/frontend/js/brand-prime.js
index 6f3ecfa..e5ea306 100644
--- a/frontend/js/brand-prime.js
+++ b/frontend/js/brand-prime.js
@@ -1,7 +1,7 @@
// Render-blocking branding primer (#38). Loaded as a synchronous same-origin
//