diff --git a/src/components/RoadmapHeader.astro b/src/components/RoadmapHeader.astro
index 53799aaed..77e859c30 100644
--- a/src/components/RoadmapHeader.astro
+++ b/src/components/RoadmapHeader.astro
@@ -22,6 +22,7 @@ const {
hasTopics = false,
} = Astro.props;
+
const isRoadmapReady = !isUpcoming;
---
diff --git a/src/components/Sponsor/Sponsor.astro b/src/components/Sponsor/Sponsor.astro
new file mode 100644
index 000000000..d53894f9f
--- /dev/null
+++ b/src/components/Sponsor/Sponsor.astro
@@ -0,0 +1,39 @@
+---
+export type SponsorType = {
+ url: string;
+ title: string;
+ imageUrl: string;
+ description: string;
+};
+
+export interface Props {
+ sponsor: SponsorType;
+}
+
+const {
+ sponsor: { title, url, description, imageUrl },
+} = Astro.props;
+---
+
+
+
+
+
+
+
+ {title}
+ {description}
+
+
+
+
diff --git a/src/components/Sponsor/sponsor.js b/src/components/Sponsor/sponsor.js
new file mode 100644
index 000000000..c657ef685
--- /dev/null
+++ b/src/components/Sponsor/sponsor.js
@@ -0,0 +1,8 @@
+window.setTimeout(() => {
+ const ad = document.querySelector('.sponsor-ad');
+ if (!ad) {
+ return;
+ }
+
+ ad.classList.remove('hidden');
+}, 500);
\ No newline at end of file
diff --git a/src/layouts/BaseLayout.astro b/src/layouts/BaseLayout.astro
index fe4d6fc53..fd8956c73 100644
--- a/src/layouts/BaseLayout.astro
+++ b/src/layouts/BaseLayout.astro
@@ -3,12 +3,15 @@ import '../styles/global.css';
import Navigation from '../components/Navigation.astro';
import OpenSourceBanner from '../components/OpenSourceBanner.astro';
import Footer from '../components/Footer.astro';
+import type { SponsorType } from '../components/Sponsor/Sponsor.astro';
+import Sponsor from '../components/Sponsor/Sponsor.astro';
export interface Props {
title: string;
+ sponsor?: SponsorType;
}
-const { title } = Astro.props;
+const { title, sponsor } = Astro.props;
---
@@ -27,7 +30,8 @@ const { title } = Astro.props;
-
+
+ {sponsor && }