diff --git a/public/videos/device-library/demonstration_show-poster.jpg b/public/videos/device-library/demonstration_show-poster.jpg
new file mode 100644
index 0000000000..25945ae70e
Binary files /dev/null and b/public/videos/device-library/demonstration_show-poster.jpg differ
diff --git a/public/videos/device-library/demonstration_show.mp4 b/public/videos/device-library/demonstration_show.mp4
new file mode 100644
index 0000000000..731076a683
Binary files /dev/null and b/public/videos/device-library/demonstration_show.mp4 differ
diff --git a/public/videos/device-library/demonstration_show.webm b/public/videos/device-library/demonstration_show.webm
new file mode 100644
index 0000000000..c684884bf4
Binary files /dev/null and b/public/videos/device-library/demonstration_show.webm differ
diff --git a/public/videos/device-library/seeed-grove-demo-poster.jpg b/public/videos/device-library/seeed-grove-demo-poster.jpg
new file mode 100644
index 0000000000..80424a04c2
Binary files /dev/null and b/public/videos/device-library/seeed-grove-demo-poster.jpg differ
diff --git a/public/videos/device-library/seeed-grove-demo.mp4 b/public/videos/device-library/seeed-grove-demo.mp4
new file mode 100644
index 0000000000..abe961f922
Binary files /dev/null and b/public/videos/device-library/seeed-grove-demo.mp4 differ
diff --git a/public/videos/device-library/seeed-grove-demo.webm b/public/videos/device-library/seeed-grove-demo.webm
new file mode 100644
index 0000000000..f58a221fd4
Binary files /dev/null and b/public/videos/device-library/seeed-grove-demo.webm differ
diff --git a/src/assets/devices-library/basic/single-board-computers/raspberry-pi-cm4/demonstration_show.gif b/src/assets/devices-library/basic/single-board-computers/raspberry-pi-cm4/demonstration_show.gif
deleted file mode 100644
index 692d66d0f7..0000000000
Binary files a/src/assets/devices-library/basic/single-board-computers/raspberry-pi-cm4/demonstration_show.gif and /dev/null differ
diff --git a/src/assets/devices-library/seeed/seeed-grove-demo.gif b/src/assets/devices-library/seeed/seeed-grove-demo.gif
deleted file mode 100644
index bd9c8a82a5..0000000000
Binary files a/src/assets/devices-library/seeed/seeed-grove-demo.gif and /dev/null differ
diff --git a/src/assets/images/gateway/python-gateway-animd-ff.svg b/src/assets/images/gateway/python-gateway-animd-ff.svg
index 4482038cb6..03d276260f 100644
--- a/src/assets/images/gateway/python-gateway-animd-ff.svg
+++ b/src/assets/images/gateway/python-gateway-animd-ff.svg
@@ -1,1645 +1,16 @@
-
+
\ No newline at end of file
diff --git a/src/components/PromoBanner.astro b/src/components/PromoBanner.astro
index 367e3eae24..4ebf82d91f 100644
--- a/src/components/PromoBanner.astro
+++ b/src/components/PromoBanner.astro
@@ -90,6 +90,7 @@ const showBanner = Astro.url.pathname.replace(/\/+$/, '') !== TARGET_PATH;
text-align: center;
text-decoration: none;
background-color: var(--promo-bg);
+ font-family: var(--sl-font, var(--sl-font-system));
// Slides off as --promo-cur → 0 (banner height == --promo-h → fully hidden).
transform: translateY(calc(var(--promo-cur) - var(--promo-h)));
will-change: transform;
@@ -123,8 +124,10 @@ const showBanner = Astro.url.pathname.replace(/\/+$/, '') !== TARGET_PATH;
.promo-arrow {
display: inline-block;
- vertical-align: middle; // center vertically, off the baseline
- transform: translateY(-0.06em); // optical nudge
+ font-size: 1.25em; // larger, more visible
+ line-height: 1;
+ vertical-align: middle; // center vertically with the text
+ transform: translateY(-0.12em); // optical nudge up
font-weight: 700;
}
}
@@ -136,6 +139,30 @@ const showBanner = Astro.url.pathname.replace(/\/+$/, '') !== TARGET_PATH;
--promo-pill-fg: #fff;
}
+ // Pages whose "Try it now" CTA is the azure primary (not indigo): match the banner
+ // to the button. Two ids → beats the dark-theme rule, so it holds in both themes.
+ #home,
+ #thingsboard-pe,
+ #thingsboard-paas,
+ #thingsboard-edge,
+ #mobile-app,
+ #mobile-pe,
+ #mqtt-broker,
+ #trendz,
+ #development-services,
+ #services,
+ #trainings,
+ #company,
+ #mediakit,
+ #careers {
+ #promo-banner {
+ --promo-bg: #{$color-primary}; // azure, same as the CTA button
+ --promo-fg: #fff;
+ --promo-pill-bg: #fff;
+ --promo-pill-fg: #305680;
+ }
+ }
+
// Marketing: scrolls away inside the .tb-topbar sticky unit (see HeaderContent).
// Docs: fixed, hides via scroll-driven --promo-cur (see _starlight-overrides).
.tb-topbar #promo-banner {
diff --git a/src/content/_includes/docs/partners/hardware/seeed/samples/raspberry-pi-with-grove-base-hat.mdx b/src/content/_includes/docs/partners/hardware/seeed/samples/raspberry-pi-with-grove-base-hat.mdx
index 5a1f85a28b..b5dcb0f584 100644
--- a/src/content/_includes/docs/partners/hardware/seeed/samples/raspberry-pi-with-grove-base-hat.mdx
+++ b/src/content/_includes/docs/partners/hardware/seeed/samples/raspberry-pi-with-grove-base-hat.mdx
@@ -1,7 +1,7 @@
import ImageGallery from '~/components/ImageGallery.astro';
import { Steps, Aside } from '@astrojs/starlight/components';
import MultiProductImageGallery from '~/components/MultiProductImageGallery.astro';
-import DocImage from '~/components/DocImage.astro';
+import GifVideo from '~/components/GifVideo.astro';
## Introduction
@@ -9,7 +9,11 @@ This guide describes how to connect a Raspberry Pi with a Grove Base Hat to Thin
The Raspberry Pi runs a Python script that reads sensor data, sends telemetry to ThingsBoard, and responds to RPC commands for servo and LED control.
-
+
## Prerequisites
diff --git a/src/content/devices/en/raspberry-pi-cm4.mdx b/src/content/devices/en/raspberry-pi-cm4.mdx
index 6b88790490..29f9e6af52 100644
--- a/src/content/devices/en/raspberry-pi-cm4.mdx
+++ b/src/content/devices/en/raspberry-pi-cm4.mdx
@@ -32,6 +32,7 @@ category: Single-board computers
---
import DocImage from '~/components/DocImage.astro';
+import GifVideo from '~/components/GifVideo.astro';
import HostNote from '~/components/DeviceLibrary/HostNote.astro';
@@ -167,7 +168,11 @@ Now we have a visualizing dashboard for displaying data and controlling the DO (
## Demonstration of the result
-
+
## Conclusion
diff --git a/src/data/partners/distributors.ts b/src/data/partners/distributors.ts
index f26a0f8700..08405baa74 100644
--- a/src/data/partners/distributors.ts
+++ b/src/data/partners/distributors.ts
@@ -53,13 +53,6 @@ export const DISTRIBUTORS: Distributor[] = [
email: "connect@archibus.ro",
website: "asc-ro.com",
},
- {
- name: "arx iT",
- regions: ["Europe"],
- countries: ["France"],
- email: "info@arxit.com",
- website: "arxit.com",
- },
{
name: "Atea Sverige AB",
regions: ["Europe"],
diff --git a/src/pages/services/index.astro b/src/pages/services/index.astro
index 4a05adae37..152ee127de 100644
--- a/src/pages/services/index.astro
+++ b/src/pages/services/index.astro
@@ -5,7 +5,7 @@ import BaseLayout from '../../layouts/BaseLayout.astro';
// ── Hero stats ──────────────────────────────────────────────────────────
const heroStats = [
{ value: '30 min', label: 'avg. support response\nwithin business hours' },
- { value: '99.95%', label: 'platform uptime\nScale plan and up' },
+ { value: '99.95%', label: 'platform uptime\nPrivate Cloud' },
{ value: '350+', label: 'delivered\nIoT projects' },
{ value: '9 years', label: 'in the\nIoT domain' },
];
@@ -31,13 +31,13 @@ const maintainHandled = [
'Proactive 24/7 monitoring and incident response',
'Auto-scaling — compute (Enterprise) and storage (all tiers)',
'Security patching — OS, database, and ThingsBoard itself',
- 'Full access to logs and monitoring dashboards',
- 'Migration of existing self-managed ThingsBoard onto our infrastructure',
+ 'Private Cloud logs and monitoring dashboards access',
+ 'Migration of existing self-managed ThingsBoard to Private Cloud',
];
const maintainSLA = [
- { label: 'Pilot and Startup', value: '99.5%' },
- { label: 'Scale plans and above', value: '99.95%' },
+ { label: 'Public Cloud', value: '99.5%' },
+ { label: 'Private Cloud', value: '99.95%' },
];
const adviseHow = [
@@ -45,7 +45,7 @@ const adviseHow = [
'Same engineer every month — they learn your setup end-to-end (with a named backup for vacation coverage)',
'Weekly call + dedicated Slack channel + joint workshops',
'6-month minimum engagement',
- 'Available alongside any paid Support or Maintenance plan',
+ 'Available regardless of licensing model',
];
const adviseUses = [
@@ -184,8 +184,8 @@ const recommendations = [
Open a ticket, get an expert response. Our support team is the same team that
- builds ThingsBoard — committed response SLA, unlimited tickets, no
- named-contact limits.
+ builds ThingsBoard — committed response SLA, unlimited tickets, and
+ access for up to 6 team members.