Skip to content

Commit 96ec742

Browse files
committed
site(sim): add haskell short-leios simulation video to landing page
1 parent 5e7aff3 commit 96ec742

File tree

2 files changed

+92
-31
lines changed

2 files changed

+92
-31
lines changed

site/src/pages/index.module.css

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,40 @@
2222
align-items: center;
2323
justify-content: center;
2424
}
25+
26+
.videoSection {
27+
padding: 4rem 0;
28+
position: relative;
29+
border-top: 1px solid var(--ifm-color-emphasis-300);
30+
margin-top: 2rem;
31+
}
32+
33+
.videoSection h2 {
34+
font-size: 2.5rem;
35+
margin-bottom: 1rem;
36+
}
37+
38+
.videoSection .subtitle {
39+
color: var(--ifm-color-emphasis-700);
40+
font-size: 1.2rem;
41+
max-width: 600px;
42+
margin: 0 auto 2rem;
43+
}
44+
45+
.videoWrapper {
46+
position: relative;
47+
padding-bottom: 56.25%; /* 16:9 aspect ratio */
48+
height: 0;
49+
overflow: hidden;
50+
border-radius: 8px;
51+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
52+
}
53+
54+
.video {
55+
position: absolute;
56+
top: 0;
57+
left: 0;
58+
width: 100%;
59+
height: 100%;
60+
object-fit: cover;
61+
}

site/src/pages/index.tsx

Lines changed: 55 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,64 @@
1-
import clsx from 'clsx';
2-
import Link from '@docusaurus/Link';
3-
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
4-
import Layout from '@theme/Layout';
5-
import HomepageFeatures from '@site/src/components/HomepageFeatures';
6-
import Heading from '@theme/Heading';
7-
import { useColorMode } from '@docusaurus/theme-common';
1+
import Link from "@docusaurus/Link";
2+
import { useColorMode } from "@docusaurus/theme-common";
3+
import useDocusaurusContext from "@docusaurus/useDocusaurusContext";
4+
import HomepageFeatures from "@site/src/components/HomepageFeatures";
5+
import Heading from "@theme/Heading";
6+
import Layout from "@theme/Layout";
7+
import clsx from "clsx";
88

9-
10-
import styles from './index.module.css';
11-
12-
import HeaderBorderTop from '@site/static/img/hero-border-top.svg';
13-
import HeaderBorderBottom from '@site/static/img/hero-border-bottom.svg';
14-
15-
import HeaderBorderTopDark from '@site/static/img/hero-border-top.svg';
16-
import HeaderBorderBottomDark from '@site/static/img/hero-border-bottom.svg';
9+
import styles from "./index.module.css";
1710

1811
function HomepageHeader() {
1912
const { siteConfig } = useDocusaurusContext();
20-
const { isDarkTheme } = useColorMode();
21-
13+
const { isDarkTheme } = useColorMode();
14+
2215
return (
2316
<>
24-
<header className={clsx('hero hero--primary', styles.heroBanner)}>
17+
<header className={clsx("hero hero--primary", styles.heroBanner)}>
18+
<div className="container">
19+
<Heading as="h1" className="hero__title">
20+
{siteConfig.title}
21+
</Heading>
22+
<p className="hero__subtitle">{siteConfig.tagline}</p>
23+
<div className={styles.buttons}>
24+
<Link
25+
className="button button--secondary button--lg"
26+
to="/docs/intro"
27+
>
28+
Get Started 🚀
29+
</Link>
30+
</div>
31+
</div>
32+
</header>
33+
</>
34+
);
35+
}
36+
37+
function VideoSection() {
38+
return (
39+
<section className={styles.videoSection}>
2540
<div className="container">
26-
<Heading as="h1" className="hero__title">
27-
{siteConfig.title}
28-
</Heading>
29-
<p className="hero__subtitle">{siteConfig.tagline}</p>
30-
<div className={styles.buttons}>
31-
<Link
32-
className="button button--secondary button--lg"
33-
to="/docs/intro">
34-
Get Started 🚀
35-
</Link>
41+
<div className="row">
42+
<div className="col col--8 col--offset-2">
43+
<h2 className="text--center">
44+
Leios in Action
45+
</h2>
46+
<p className={clsx("text--center", styles.subtitle)}>
47+
Early simulation demonstrating the Leios protocol's
48+
block propagation and network behavior
49+
</p>
50+
<div className={styles.videoWrapper}>
51+
<iframe
52+
className={styles.video}
53+
src="https://drive.google.com/file/d/1aVgh0M-jurCVKy0xYQuLQMoj4ikLNBpH/preview"
54+
allow="autoplay"
55+
allowFullScreen
56+
/>
57+
</div>
58+
</div>
3659
</div>
3760
</div>
38-
</header>
39-
</>
61+
</section>
4062
);
4163
}
4264

@@ -45,10 +67,12 @@ export default function Home(): JSX.Element {
4567
return (
4668
<Layout
4769
title={`Hello from ${siteConfig.title}`}
48-
description="Description will go into a meta tag in <head />">
70+
description="Description will go into a meta tag in <head />"
71+
>
4972
<HomepageHeader />
5073
<main>
5174
<HomepageFeatures />
75+
<VideoSection />
5276
</main>
5377
</Layout>
5478
);

0 commit comments

Comments
 (0)