Skip to content

Commit 948cdad

Browse files
author
ml-241
authored
Add animations to Docs homepage v2 (#171)
1 parent 4fb09dd commit 948cdad

File tree

4 files changed

+498
-18
lines changed

4 files changed

+498
-18
lines changed

fern/assets/styles.css

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -873,4 +873,45 @@ a[href*="changelog"] svg {
873873
}
874874
}
875875

876+
877+
878+
.sdk-rive {
879+
aspect-ratio: 369/93;
880+
width: 100%;
881+
display: block;
882+
overflow: visible; /* Changed from hidden - was clipping interactive areas */
883+
transform: translateY(0px);
884+
transition: transform 250ms ease-out !important;
885+
will-change: transform;
886+
/* Ensure click events can reach the canvas */
887+
pointer-events: auto;
888+
}
889+
890+
.sdk-rive:hover {
891+
transform: translateY(-3px) !important;
892+
}
893+
894+
/* Ensure the canvas can receive clicks and is properly layered */
895+
.rive-container {
896+
width: 100%;
897+
height: 100%;
898+
display: block;
899+
position: relative;
900+
/* Ensure container doesn't block events */
901+
pointer-events: none;
902+
}
903+
904+
.rive-container canvas {
905+
width: 100%;
906+
height: 100%;
907+
vertical-align: baseline;
908+
display: inline-block;
909+
/* Allow canvas to receive events while container doesn't */
910+
pointer-events: auto !important;
911+
position: relative;
912+
z-index: 1;
913+
vertical-align: baseline;
914+
display: inline-block;
915+
}
916+
876917
/*** END -- LANDING PAGE STYLING ***/

fern/docs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,8 @@ layout:
147147
js:
148148
- path: ./footer-dist/output.js
149149
strategy: beforeInteractive
150+
- path: ./rive-animation.js
151+
strategy: afterInteractive
150152

151153
analytics:
152154
# posthog:

fern/products/home/pages/welcome.mdx

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -58,20 +58,12 @@ import { FernFooter } from "../../../components/FernFooter";
5858
</p>
5959
</div>
6060

61-
<a className="sdks-preview" href="/sdks/overview/introduction">
62-
<img
63-
src="./images/sdks-preview-light.svg"
64-
alt="SDK Generation Preview"
65-
className="sdks-preview-img dark:hidden"
66-
noZoom
67-
/>
68-
<img
69-
src="./images/sdks-preview-dark.svg"
70-
alt="SDK Generation Preview"
71-
className="sdks-preview-img hidden dark:block"
72-
noZoom
73-
/>
74-
</a>
61+
{/* Rive Animation */}
62+
<div className="sdk-rive">
63+
<div className="rive-container">
64+
<canvas id="sdk-rive-canvas"></canvas>
65+
</div>
66+
</div>
7567

7668
{/* Language Icons */}
7769
<div className="language-icons">
@@ -139,8 +131,10 @@ import { FernFooter } from "../../../components/FernFooter";
139131
</p>
140132
</div>
141133

142-
<img src="./images/docs-preview-light.svg" alt="Docs Preview" className="docs-preview-img dark:hidden" noZoom />
143-
<img src="./images/docs-preview-dark.svg" alt="Docs Preview" className="docs-preview-img hidden dark:block" noZoom />
134+
{/* Rive Animation */}
135+
<div class="rive-container">
136+
<canvas id="docs-rive-canvas"></canvas>
137+
</div>
144138

145139
<div className="action-buttons-vertical">
146140
<a className="fern-button filled normal primary gap-1 w-fit a-btn" href="/docs/getting-started/overview">
@@ -190,8 +184,10 @@ import { FernFooter } from "../../../components/FernFooter";
190184
</p>
191185
</div>
192186

193-
<img src="./images/ai-search-preview-light.svg" alt="AI Search Mockup" className="ai-search-preview-img dark:hidden" noZoom />
194-
<img src="./images/ai-search-preview-dark.svg" alt="AI Search Mockup" className="ai-search-preview-img hidden dark:block" noZoom />
187+
{/* Rive Animation */}
188+
<div class="rive-container">
189+
<canvas id="ai-rive-canvas"></canvas>
190+
</div>
195191

196192
<div className="action-buttons">
197193
<a className="fern-button filled normal primary gap-1 a-btn" href="/ask-fern/getting-started/what-is-ask-fern">

0 commit comments

Comments
 (0)