diff --git a/apps/developer-hub/content/docs/entropy/protocol-design.mdx b/apps/developer-hub/content/docs/entropy/protocol-design.mdx
index 1b632164a7..8a5f75c7f7 100644
--- a/apps/developer-hub/content/docs/entropy/protocol-design.mdx
+++ b/apps/developer-hub/content/docs/entropy/protocol-design.mdx
@@ -4,6 +4,8 @@ description: Understanding how Pyth Entropy generates secure random numbers
icon: Book
---
+
+
The Entropy protocol implements a secure 2-party random number generation procedure. The protocol
is an extension of a simple commit/reveal protocol. The original version has the following steps:
diff --git a/apps/developer-hub/content/docs/entropy/whats-new-entropyv2.mdx b/apps/developer-hub/content/docs/entropy/whats-new-entropyv2.mdx
index 960a3c307c..9ef8662cea 100644
--- a/apps/developer-hub/content/docs/entropy/whats-new-entropyv2.mdx
+++ b/apps/developer-hub/content/docs/entropy/whats-new-entropyv2.mdx
@@ -4,6 +4,8 @@ description: New features and improvements in Entropy v2
icon: Sparkle
---
+
+
## Key Improvements
Pyth Entropy v2 brings new features and improvements that make random number generation more flexible, efficient, and easier to integrate.
diff --git a/apps/developer-hub/content/docs/price-feeds/core/fetch-price-updates.mdx b/apps/developer-hub/content/docs/price-feeds/core/fetch-price-updates.mdx
index 8f93baf909..c6767634a0 100644
--- a/apps/developer-hub/content/docs/price-feeds/core/fetch-price-updates.mdx
+++ b/apps/developer-hub/content/docs/price-feeds/core/fetch-price-updates.mdx
@@ -6,6 +6,11 @@ slug: /price-feeds/core/fetch-price-updates
import { Callout } from "fumadocs-ui/components/callout";
+
+
The following guide explains how to fetch price updates.
Price updates can be submitted to the Pyth Price Feeds contract to update the on-chain price.
Please see [What is a Pull Oracle?](/price-feeds/core/pull-updates) to learn more.
diff --git a/apps/developer-hub/content/docs/price-feeds/core/how-pyth-works/index.mdx b/apps/developer-hub/content/docs/price-feeds/core/how-pyth-works/index.mdx
index 1c2ee23c63..0ec92357b4 100644
--- a/apps/developer-hub/content/docs/price-feeds/core/how-pyth-works/index.mdx
+++ b/apps/developer-hub/content/docs/price-feeds/core/how-pyth-works/index.mdx
@@ -4,6 +4,11 @@ description: Design Overview - Understand the high-level architecture of the Pyt
slug: /price-feeds/core/how-pyth-works
---
+
+
Pyth is a protocol that allows market participants to publish pricing information on-chain for others to use. The protocol is an interaction between three parties:
1. _Publishers_ submit pricing information to Pyth's oracle program. Pyth has multiple data publishers for every product to improve the accuracy and robustness of the system.
diff --git a/apps/developer-hub/content/docs/price-feeds/core/use-real-time-data/index.mdx b/apps/developer-hub/content/docs/price-feeds/core/use-real-time-data/index.mdx
index 7733c44e3d..a2faa969f6 100644
--- a/apps/developer-hub/content/docs/price-feeds/core/use-real-time-data/index.mdx
+++ b/apps/developer-hub/content/docs/price-feeds/core/use-real-time-data/index.mdx
@@ -6,6 +6,11 @@ slug: /price-feeds/core/use-real-time-data
import { Callout } from "fumadocs-ui/components/callout";
+
+
The following guides demonstrate how to consume Pyth real-time prices on various blockchains.
These guides are intended for developers building on-chain applications that need the latest price data, i.e., the price data must
be on the blockchain.
diff --git a/apps/developer-hub/src/components/YouTubeEmbed/index.module.scss b/apps/developer-hub/src/components/YouTubeEmbed/index.module.scss
new file mode 100644
index 0000000000..468756167b
--- /dev/null
+++ b/apps/developer-hub/src/components/YouTubeEmbed/index.module.scss
@@ -0,0 +1,21 @@
+@use "@pythnetwork/component-library/theme";
+
+.container {
+ position: relative;
+ width: 100%;
+ padding-bottom: 56.25%; /* 16:9 aspect ratio */
+ margin: theme.spacing(6) 0;
+ border-radius: theme.border-radius("xl");
+ overflow: hidden;
+ background-color: theme.color("background", "primary");
+ box-shadow: 0 4px 24px rgb(0 0 0 / 12%);
+}
+
+.iframe {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ border: none;
+}
diff --git a/apps/developer-hub/src/components/YouTubeEmbed/index.tsx b/apps/developer-hub/src/components/YouTubeEmbed/index.tsx
new file mode 100644
index 0000000000..0a7ffa7ffb
--- /dev/null
+++ b/apps/developer-hub/src/components/YouTubeEmbed/index.tsx
@@ -0,0 +1,28 @@
+import clsx from "clsx";
+
+import styles from "./index.module.scss";
+
+type YouTubeEmbedProps = {
+ id: string;
+ title?: string;
+ className?: string;
+};
+
+export const YouTubeEmbed = ({
+ id,
+ title = "YouTube video player",
+ className,
+}: YouTubeEmbedProps) => (
+
+
+
+);
+
+export default YouTubeEmbed;
diff --git a/apps/developer-hub/src/mdx-components.tsx b/apps/developer-hub/src/mdx-components.tsx
index 886d04ac6b..06d37173fd 100644
--- a/apps/developer-hub/src/mdx-components.tsx
+++ b/apps/developer-hub/src/mdx-components.tsx
@@ -6,6 +6,7 @@ import defaultMdxComponents from "fumadocs-ui/mdx";
import type { MDXComponents } from "mdx/types";
import { APICard, APICards } from "./components/APICard";
+import { YouTubeEmbed } from "./components/YouTubeEmbed";
import { openapi } from "./lib/openapi";
export function getMDXComponents(components?: MDXComponents): MDXComponents {
@@ -20,5 +21,6 @@ export function getMDXComponents(components?: MDXComponents): MDXComponents {
Tab,
...components,
InfoBox: InfoBox,
+ YouTubeEmbed,
};
}