{panel.eyebrow}
+{panel.title}
+{panel.body}
+diff --git a/frontend/public/assets/linusgao/beaver1.svg b/frontend/public/assets/linusgao/beaver1.svg
new file mode 100644
index 0000000..74e6596
--- /dev/null
+++ b/frontend/public/assets/linusgao/beaver1.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/public/assets/linusgao/beaver2.svg b/frontend/public/assets/linusgao/beaver2.svg
new file mode 100644
index 0000000..a1a77ef
--- /dev/null
+++ b/frontend/public/assets/linusgao/beaver2.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/public/assets/linusgao/beaver3.svg b/frontend/public/assets/linusgao/beaver3.svg
new file mode 100644
index 0000000..b4c5740
--- /dev/null
+++ b/frontend/public/assets/linusgao/beaver3.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/public/assets/linusgao/beaver4.svg b/frontend/public/assets/linusgao/beaver4.svg
new file mode 100644
index 0000000..68d4a5d
--- /dev/null
+++ b/frontend/public/assets/linusgao/beaver4.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/public/assets/linusgao/beaver5.svg b/frontend/public/assets/linusgao/beaver5.svg
new file mode 100644
index 0000000..caaef6a
--- /dev/null
+++ b/frontend/public/assets/linusgao/beaver5.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (1).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (1).png
new file mode 100644
index 0000000..1181a4d
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (1).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (2).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (2).png
new file mode 100644
index 0000000..ae4eb64
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (2).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (3).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (3).png
new file mode 100644
index 0000000..d4e33c1
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (3).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (4).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (4).png
new file mode 100644
index 0000000..6d839eb
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_13_54 PM (4).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_55_42 PM.png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_55_42 PM.png
new file mode 100644
index 0000000..cd7fcf5
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 10_55_42 PM.png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (1).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (1).png
new file mode 100644
index 0000000..35e0e79
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (1).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (2).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (2).png
new file mode 100644
index 0000000..e5975a1
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (2).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (3).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (3).png
new file mode 100644
index 0000000..eda5986
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_23 PM (3).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (4).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (4).png
new file mode 100644
index 0000000..20c2c9c
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (4).png differ
diff --git a/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (5).png b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (5).png
new file mode 100644
index 0000000..ea09f56
Binary files /dev/null and b/frontend/public/assets/linusgao/newhero/ChatGPT Image Jun 7, 2026, 11_30_24 PM (5).png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-1.png b/frontend/public/assets/linusgao/processed/hero-1.png
new file mode 100644
index 0000000..f0f73b0
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-1.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-2.png b/frontend/public/assets/linusgao/processed/hero-2.png
new file mode 100644
index 0000000..7dba7cd
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-2.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-3.png b/frontend/public/assets/linusgao/processed/hero-3.png
new file mode 100644
index 0000000..55a91f4
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-3.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-4.png b/frontend/public/assets/linusgao/processed/hero-4.png
new file mode 100644
index 0000000..c9b00bd
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-4.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-5.png b/frontend/public/assets/linusgao/processed/hero-5.png
new file mode 100644
index 0000000..64e14f5
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-5.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-6.png b/frontend/public/assets/linusgao/processed/hero-6.png
new file mode 100644
index 0000000..a8f45cb
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-6.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-7.png b/frontend/public/assets/linusgao/processed/hero-7.png
new file mode 100644
index 0000000..e520647
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-7.png differ
diff --git a/frontend/public/assets/linusgao/processed/hero-8.png b/frontend/public/assets/linusgao/processed/hero-8.png
new file mode 100644
index 0000000..af7c6ac
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/hero-8.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-1.png b/frontend/public/assets/linusgao/processed/newhero-1.png
new file mode 100644
index 0000000..dacd0a3
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-1.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-2.png b/frontend/public/assets/linusgao/processed/newhero-2.png
new file mode 100644
index 0000000..65ac346
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-2.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-3.png b/frontend/public/assets/linusgao/processed/newhero-3.png
new file mode 100644
index 0000000..c4e51f1
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-3.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-4.png b/frontend/public/assets/linusgao/processed/newhero-4.png
new file mode 100644
index 0000000..c83dd1c
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-4.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-5.png b/frontend/public/assets/linusgao/processed/newhero-5.png
new file mode 100644
index 0000000..ef92d57
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-5.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-6.png b/frontend/public/assets/linusgao/processed/newhero-6.png
new file mode 100644
index 0000000..e44956f
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-6.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-7.png b/frontend/public/assets/linusgao/processed/newhero-7.png
new file mode 100644
index 0000000..3058ef1
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-7.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-8.png b/frontend/public/assets/linusgao/processed/newhero-8.png
new file mode 100644
index 0000000..391377e
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-8.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-waterfall-1.png b/frontend/public/assets/linusgao/processed/newhero-waterfall-1.png
new file mode 100644
index 0000000..46d8927
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-waterfall-1.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-waterfall-2.png b/frontend/public/assets/linusgao/processed/newhero-waterfall-2.png
new file mode 100644
index 0000000..d54293b
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-waterfall-2.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-waterfall-3.png b/frontend/public/assets/linusgao/processed/newhero-waterfall-3.png
new file mode 100644
index 0000000..8bdeb96
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-waterfall-3.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-waterfall-4.png b/frontend/public/assets/linusgao/processed/newhero-waterfall-4.png
new file mode 100644
index 0000000..5b3efa9
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-waterfall-4.png differ
diff --git a/frontend/public/assets/linusgao/processed/newhero-waterfall-5.png b/frontend/public/assets/linusgao/processed/newhero-waterfall-5.png
new file mode 100644
index 0000000..4d5e329
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/newhero-waterfall-5.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-1.png b/frontend/public/assets/linusgao/processed/transition-1.png
new file mode 100644
index 0000000..2523310
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-1.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-10.png b/frontend/public/assets/linusgao/processed/transition-10.png
new file mode 100644
index 0000000..5309749
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-10.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-2.png b/frontend/public/assets/linusgao/processed/transition-2.png
new file mode 100644
index 0000000..f338970
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-2.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-3.png b/frontend/public/assets/linusgao/processed/transition-3.png
new file mode 100644
index 0000000..b8eacc1
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-3.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-4.png b/frontend/public/assets/linusgao/processed/transition-4.png
new file mode 100644
index 0000000..7c2512c
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-4.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-5.png b/frontend/public/assets/linusgao/processed/transition-5.png
new file mode 100644
index 0000000..cce6bb4
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-5.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-6.png b/frontend/public/assets/linusgao/processed/transition-6.png
new file mode 100644
index 0000000..a318627
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-6.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-7.png b/frontend/public/assets/linusgao/processed/transition-7.png
new file mode 100644
index 0000000..fbc843b
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-7.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-8.png b/frontend/public/assets/linusgao/processed/transition-8.png
new file mode 100644
index 0000000..cb25743
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-8.png differ
diff --git a/frontend/public/assets/linusgao/processed/transition-9.png b/frontend/public/assets/linusgao/processed/transition-9.png
new file mode 100644
index 0000000..fc25122
Binary files /dev/null and b/frontend/public/assets/linusgao/processed/transition-9.png differ
diff --git a/frontend/public/assets/linusgao/secondpage/ChatGPT Image Jun 8, 2026, 11_26_53 AM.png b/frontend/public/assets/linusgao/secondpage/ChatGPT Image Jun 8, 2026, 11_26_53 AM.png
new file mode 100644
index 0000000..290a672
Binary files /dev/null and b/frontend/public/assets/linusgao/secondpage/ChatGPT Image Jun 8, 2026, 11_26_53 AM.png differ
diff --git a/frontend/public/assets/linusgao/thirdpage/img1.png b/frontend/public/assets/linusgao/thirdpage/img1.png
new file mode 100644
index 0000000..425542b
Binary files /dev/null and b/frontend/public/assets/linusgao/thirdpage/img1.png differ
diff --git a/frontend/public/assets/linusgao/thirdpage/img2.png b/frontend/public/assets/linusgao/thirdpage/img2.png
new file mode 100644
index 0000000..44ba7dc
Binary files /dev/null and b/frontend/public/assets/linusgao/thirdpage/img2.png differ
diff --git a/frontend/public/assets/linusgao/thirdpage/img3.png b/frontend/public/assets/linusgao/thirdpage/img3.png
new file mode 100644
index 0000000..cdbbba2
Binary files /dev/null and b/frontend/public/assets/linusgao/thirdpage/img3.png differ
diff --git a/frontend/public/assets/tenzin/arrow.svg b/frontend/public/assets/tenzin/arrow.svg
new file mode 100644
index 0000000..d69e33b
--- /dev/null
+++ b/frontend/public/assets/tenzin/arrow.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/public/assets/tenzin/background.png b/frontend/public/assets/tenzin/background.png
new file mode 100644
index 0000000..4456225
Binary files /dev/null and b/frontend/public/assets/tenzin/background.png differ
diff --git a/frontend/public/assets/tenzin/brown-cookies.otf b/frontend/public/assets/tenzin/brown-cookies.otf
new file mode 100644
index 0000000..82c16c3
Binary files /dev/null and b/frontend/public/assets/tenzin/brown-cookies.otf differ
diff --git a/frontend/public/assets/tenzin/logo.png b/frontend/public/assets/tenzin/logo.png
new file mode 100644
index 0000000..e18d926
Binary files /dev/null and b/frontend/public/assets/tenzin/logo.png differ
diff --git a/frontend/public/assets/tenzin/scene.png b/frontend/public/assets/tenzin/scene.png
new file mode 100644
index 0000000..ca355cb
Binary files /dev/null and b/frontend/public/assets/tenzin/scene.png differ
diff --git a/frontend/public/assets/tenzin/sprites.png b/frontend/public/assets/tenzin/sprites.png
new file mode 100644
index 0000000..d052be4
Binary files /dev/null and b/frontend/public/assets/tenzin/sprites.png differ
diff --git a/frontend/src/components/Hero.astro b/frontend/src/components/Hero.astro
new file mode 100644
index 0000000..5a77132
--- /dev/null
+++ b/frontend/src/components/Hero.astro
@@ -0,0 +1,141 @@
+---
+import caveLayer from "../../public/assets/linusgao/processed/newhero-2.png"
+import characterLayer from "../../public/assets/linusgao/processed/newhero-3.png"
+import poolLayer from "../../public/assets/linusgao/processed/newhero-4.png"
+import waterfallFrame1 from "../../public/assets/linusgao/processed/newhero-waterfall-1.png"
+import waterfallFrame2 from "../../public/assets/linusgao/processed/newhero-waterfall-2.png"
+import waterfallFrame3 from "../../public/assets/linusgao/processed/newhero-waterfall-3.png"
+import waterfallFrame4 from "../../public/assets/linusgao/processed/newhero-waterfall-4.png"
+import waterfallFrame5 from "../../public/assets/linusgao/processed/newhero-waterfall-5.png"
+
+const waterfallFrames = [
+ waterfallFrame1,
+ waterfallFrame2,
+ waterfallFrame3,
+ waterfallFrame4,
+ waterfallFrame5
+];
+---
+
+ Scroll story
+ The scene pins while this wide strip moves sideways. The background layers drift at different speeds so you can judge the scroll effect without the four story cards.
+ HC27
+ Bring a laptop, a curious idea, and a team spirit. The coast is open for builders.
+
+
+
+
+
+ ))
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+ Horizontal scroll demo
+
+
+
+
+
Ready for the pier?
+
{panel.eyebrow}
+{panel.body}
+Keynote
+Opening keynote
+Founder, Northstar Labs
++ Maya builds climate data tools for coastal cities and leads teams that turn research into public-impact software. Her keynote will focus on building with urgency, care, and a strong demo culture. +
+Featured project
++ A rapid-response platform that helps community teams triage calls, map incidents, and coordinate resources during coastal emergencies. +
+ + View project -> + +Sponsors
++ Our sponsors help hackers access tools, mentors, prizes, and the resources to ship ambitious projects. +
+hello, still working on first draft!
+ + diff --git a/frontend/src/pages/linusgao.astro b/frontend/src/pages/linusgao.astro new file mode 100644 index 0000000..12f8998 --- /dev/null +++ b/frontend/src/pages/linusgao.astro @@ -0,0 +1,11 @@ +--- +import SecondPageParallax from "@/components/SecondPageParallax.astro" +import Layout from "@/components/LinusLayout.astro" +import Hero from "@/components/Hero.astro" +import ThirdPageHorizontal from "@/components/ThirdPageHorizontal.astro" +--- +
+
+
+
+
+ + Hack Canada is a nationwide student-led movement building a more innovative, + inclusive, and diverse Canada. +
+ + +