mirror of
https://github.com/screentinker/screentinker.git
synced 2026-08-14 14:23:14 -06:00
* feat(seo): enable IndexNow (key file + submission script) Instant re-crawl pings to Bing/Yandex/Seznam/Naver on content changes (Google ignores IndexNow but uses the same sitemap). Hosts the ownership key at frontend/<key>.txt (served at https://screentinker.com/<key>.txt) and adds scripts/indexnow-submit.sh which POSTs the sitemap URLs to api.indexnow.org (DRY_RUN=1 to preview). Run after a content deploy / from CI. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * feat(seo): landing-page optimization pass (schema fixes, FAQ, content depth, CWV) From a 3-way SEO audit (technical / structured-data / content). Highest-value fixes: Structured data (penalty risk + rich results): - REMOVE the fabricated aggregateRating (4.8/50) from SoftwareApplication — no visible reviews on the page = a "spammy structured markup" risk. Replace loose Offers with a proper AggregateOffer + publisher + image/screenshot. - Add a VISIBLE FAQ section (10 Q&As) so the FAQPage schema finally has on-page content (it shipped 4 Q&As with no visible counterpart — a mismatch); expand the FAQPage JSON-LD to mirror all 10. - Add a WebSite entity block; add YouTube to Organization sameAs + a description. - Fix the guides/compare BreadcrumbList position-2 target (dead /#features -> /). Content / keywords / IA: - Hero + Features subtitle rewritten to surface "digital signage software" / "digital signage CMS" / "self-host" / "free" above the fold. - New "How It Works" (3-step) and "Use Cases / Industries" (8 verticals) sections for snippet + long-tail intent. Platform tiles (Android TV / Fire TV / Raspberry Pi) now link to their guides. - FAQ answers add keyword-rich internal links to the guides + compare pages. Technical / Core Web Vitals: - Lazy-load the YouTube iframe (loading=lazy + youtube-nocookie + explicit width/height) — the top LCP/TBT win on mobile. - Title 84->~60 chars (keyword-front), meta description ~178->~156 + CTA. - <div> footer -> <footer> landmark; favicon sizes (192+512). - sitemap.xml: add <lastmod> to all 10 URLs. All JSON-LD validated (4 blocks parse; single H1; no fabricated data). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * feat(seo): open-source/what-is pillars, Xibo+Anthias compares, integrations hub [#177] Competitor-SEO gap-fill from the Yodeck/ScreenCloud/OptiSigns/Xibo teardowns. 11 new static pages + sitemap/landing/README wiring. All match the existing seo-page.css template; BreadcrumbList on every page, FAQPage (visible-backed) on guides + integration spokes. No fabricated ratings. Pillar guides: - guides/open-source-digital-signage.html (head term "open source digital signage") - guides/what-is-digital-signage.html (TOFU definitional pillar + FAQ) Comparisons (the open-source SERP Xibo/Anthias own): - compare/xibo-alternative.html (wedge: every ScreenTinker player free vs Xibo's paid Android/Tizen/webOS licences; no free plan) - compare/anthias-alternative.html (wedge: fleet + video walls + multi-platform vs one-Pi-one-screen) Integrations (OptiSigns' top tactic — one page per app): - integrations/index.html hub - google-slides / canva / power-bi (honestly framed as the universal Webpage widget, with the X-Frame-Options / publish-vs-edit-URL caveat + Power BI public-data warning) - youtube / rss / weather (native widgets) Wiring: - sitemap.xml +11 URLs (lastmod 2026-07-13) - landing.html Resources grid: 6 new cards (open-source, what-is, vs Xibo, vs Anthias, integrations hub) - README.md: keyword-rich open-source/self-hosted intro + platform list + guide links (GitHub-SERP asset) - docs/seo-directory-listings.md: off-repo G2/Capterra/AlternativeTo/awesome-selfhosted/fingoweb submission checklist + reusable kit Validated: all JSON-LD parses, canonicals match paths, 0 broken internal links, sitemap well-formed (21 URLs). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
136 lines
9.2 KiB
HTML
136 lines
9.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Digital Signage Integrations - Connect Any App | ScreenTinker</title>
|
|
<meta name="description" content="Connect ScreenTinker to the apps you already use. Native widgets for YouTube, RSS, weather, and clocks, plus a universal Webpage widget that embeds any public URL - Google Slides, Canva, Power BI, and more.">
|
|
<meta name="keywords" content="digital signage integrations, digital signage widgets, embed webpage digital signage, google slides signage, canva signage, power bi signage, screentinker integrations">
|
|
<meta name="robots" content="index, follow">
|
|
<link rel="canonical" href="https://screentinker.com/integrations/index.html">
|
|
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:url" content="https://screentinker.com/integrations/index.html">
|
|
<meta property="og:title" content="Digital Signage Integrations - Connect Any App | ScreenTinker">
|
|
<meta property="og:description" content="Native widgets plus a universal Webpage widget that embeds any public URL - Google Slides, Canva, Power BI, and more.">
|
|
<meta property="og:image" content="https://screentinker.com/assets/dashboard-preview.png">
|
|
<meta property="og:site_name" content="ScreenTinker">
|
|
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<meta name="twitter:title" content="Digital Signage Integrations - Connect Any App">
|
|
<meta name="twitter:description" content="Native widgets plus a universal Webpage widget that embeds any public URL - Google Slides, Canva, Power BI, and more.">
|
|
<meta name="twitter:image" content="https://screentinker.com/assets/dashboard-preview.png">
|
|
|
|
<meta name="theme-color" content="#111827">
|
|
<link rel="icon" href="/assets/icon-192.png">
|
|
<link rel="apple-touch-icon" href="/assets/icon-192.png">
|
|
<link rel="stylesheet" href="/css/seo-page.css">
|
|
</head>
|
|
<body>
|
|
<nav>
|
|
<div class="nav-inner">
|
|
<div class="nav-logo">
|
|
<a href="/" style="display:flex;align-items:center;gap:10px">
|
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg>
|
|
<span class="nav-logo-text">ScreenTinker</span>
|
|
</a>
|
|
</div>
|
|
<div class="nav-links">
|
|
<a href="/#features">Features</a>
|
|
<a href="/#pricing">Pricing</a>
|
|
<a href="/#compare">Compare</a>
|
|
<a href="/app#/login" class="btn btn-outline" style="margin-left:16px">Sign In</a>
|
|
<a href="/app#/login" class="btn btn-primary" style="margin-left:8px">Try Free</a>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<main class="article">
|
|
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
<a href="/">Home</a>
|
|
<span>/</span>
|
|
<span>Integrations</span>
|
|
</nav>
|
|
|
|
<h1>Digital Signage Integrations</h1>
|
|
<p class="lead">ScreenTinker connects to the tools you already use in two ways: purpose-built <strong>native widgets</strong> for common content types, and a universal <strong>Webpage widget</strong> 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.</p>
|
|
|
|
<h2>Native widgets</h2>
|
|
<p>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).</p>
|
|
<ul>
|
|
<li><strong><a href="/integrations/youtube-digital-signage.html">YouTube</a>.</strong> Play a single video, a playlist, or a live stream, with autoplay and loop handled for you.</li>
|
|
<li><strong><a href="/integrations/rss-digital-signage.html">RSS</a>.</strong> Pull headlines from any feed - news, blogs, internal announcements - and rotate them on screen.</li>
|
|
<li><strong><a href="/integrations/weather-digital-signage.html">Weather</a>.</strong> Current conditions and forecast for any location.</li>
|
|
<li><strong>Clock.</strong> Analog or digital time and date, with time-zone support for multi-site fleets.</li>
|
|
<li><strong>Social.</strong> Surface social posts and feeds in a signage-friendly layout.</li>
|
|
<li><strong>Text / HTML.</strong> Free-form rich text or hand-written HTML for banners, notices, and custom markup.</li>
|
|
<li><strong>Directory board.</strong> A building or event directory board for lobbies and wayfinding.</li>
|
|
</ul>
|
|
|
|
<h2>Embed anything with the Webpage widget</h2>
|
|
<p>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.</p>
|
|
<p><strong>Honest caveat:</strong> sites that send <code>X-Frame-Options</code> or a <code>frame-ancestors</code> Content-Security-Policy that denies embedding <em>cannot</em> 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.</p>
|
|
<ul>
|
|
<li><strong><a href="/integrations/google-slides-digital-signage.html">Google Slides</a>.</strong> Publish a deck to the web and auto-advance it as an announcement board.</li>
|
|
<li><strong><a href="/integrations/canva-digital-signage.html">Canva</a>.</strong> Publish a design as a website and loop it as a slideshow.</li>
|
|
<li><strong><a href="/integrations/power-bi-digital-signage.html">Power BI</a>.</strong> Use "Publish to web (public)" to put a live-refreshing dashboard on a wall.</li>
|
|
<li><strong>Tableau.</strong> Embed a published Tableau Public view or a share URL that allows framing.</li>
|
|
<li><strong>Grafana.</strong> Point the widget at a public or LAN-reachable Grafana dashboard URL.</li>
|
|
<li><strong>Internal dashboards.</strong> Any in-house web app on a URL your player can reach that does not block framing.</li>
|
|
</ul>
|
|
|
|
<h2>Frequently asked questions</h2>
|
|
|
|
<h3>Can ScreenTinker integrate with a specific app?</h3>
|
|
<p>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.</p>
|
|
|
|
<h3>What is the difference between a native widget and the Webpage widget?</h3>
|
|
<p>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.</p>
|
|
|
|
<h3>Do I need a paid plan to use integrations?</h3>
|
|
<p>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.</p>
|
|
|
|
<div class="related">
|
|
<h2>Related guides</h2>
|
|
<ul>
|
|
<li><a href="/integrations/google-slides-digital-signage.html">Put Google Slides on digital signage</a></li>
|
|
<li><a href="/integrations/canva-digital-signage.html">Display Canva designs on digital signage</a></li>
|
|
<li><a href="/integrations/power-bi-digital-signage.html">Power BI dashboards on digital signage</a></li>
|
|
<li><a href="/guides/what-is-digital-signage.html">What is digital signage?</a></li>
|
|
<li><a href="/guides/self-hosted-digital-signage.html">Self-hosted digital signage: complete guide</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="cta">
|
|
<h2>Try ScreenTinker free</h2>
|
|
<p>Add a widget, drop in a URL, and see it on a screen in minutes. Free plan, no credit card required.</p>
|
|
<a href="/app#/login" class="btn btn-primary" style="padding:14px 28px;font-size:16px">Start Free</a>
|
|
<a href="https://github.com/screentinker/screentinker" target="_blank" rel="noopener" class="btn btn-outline" style="padding:14px 28px;font-size:16px;margin-left:12px">View on GitHub</a>
|
|
</div>
|
|
</main>
|
|
|
|
<footer>
|
|
<div style="color:var(--dim);font-size:13px">© 2026 ScreenTinker. All rights reserved.</div>
|
|
<div class="links">
|
|
<a href="https://github.com/screentinker/screentinker" target="_blank" rel="noopener">GitHub</a>
|
|
<a href="https://discord.gg/utTdsrqq4Z" target="_blank" rel="noopener">Discord</a>
|
|
<a href="/legal/terms.html">Terms</a>
|
|
<a href="/legal/privacy.html">Privacy</a>
|
|
<a href="/legal/third-party.html">Licenses</a>
|
|
<a href="/app#/login">Sign In</a>
|
|
</div>
|
|
</footer>
|
|
|
|
<script type="application/ld+json">
|
|
{
|
|
"@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/" }
|
|
]
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|