11<a
22 href =" https://www.producthunt.com/"
33 onclick =" fathom.trackEvent('alert_click');"
4- class =" group relative z-30 flex flex-wrap items-center justify-center gap-x-2 gap-y-2.5 overflow-hidden bg-gray-100 px-5 py-2.5 text-center text-sm tracking-tight text-pretty select-none [--blue-ribbon:#3B63FE] [--product-hunt:#FF6154] sm:text-base dark:bg-gray-950/50"
4+ class =" group relative z-30 flex flex-wrap items-center justify-center gap-x-2 gap-y-2.5 overflow-hidden bg-gray-100 px-5 py-2 text-center text-sm tracking-tight text-pretty select-none [--blue-ribbon:#3B63FE] [--product-hunt:#FF6154] sm:text-base dark:bg-gray-950/50"
5+ aria-label =" Bifrost dropped on Product Hunt. Please upvote."
56>
6- {{-- Left arrows --}}
7- <div class =" hidden flex-row-reverse gap-2 min-[31rem]:flex" >
7+ {{-- Decorative left arrows --}}
8+ <div
9+ class =" hidden flex-row-reverse gap-2 min-[31rem]:flex"
10+ aria-hidden =" true"
11+ >
812 <svg
913 x-data =" {
1014 init() {
1115 gsap.to($el, {
12- keyframes: {
13- autoAlpha: [0, 1, 0],
14- y: [0, -10],
15- },
16+ keyframes: { autoAlpha: [0, 1, 0], y: [0, -10] },
1617 repeat: -1,
1718 ease: 'sine.in',
1819 duration: 2,
@@ -23,6 +24,8 @@ class="group relative z-30 flex flex-wrap items-center justify-center gap-x-2 ga
2324 class =" w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
2425 viewBox =" 0 0 9 16"
2526 fill =" none"
27+ aria-hidden =" true"
28+ focusable =" false"
2629 >
2730 <path
2831 d =" M4.5 0.749999L0.169873 8.25L8.83013 8.25L4.5 0.749999ZM4.5 15.75L5.25 15.75L5.25 7.5L4.5 7.5L3.75 7.5L3.75 15.75L4.5 15.75Z"
@@ -33,10 +36,7 @@ class="w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
3336 x-data =" {
3437 init() {
3538 gsap.to($el, {
36- keyframes: {
37- autoAlpha: [0, 1, 0],
38- y: [8, 0],
39- },
39+ keyframes: { autoAlpha: [0, 1, 0], y: [8, 0] },
4040 repeat: -1,
4141 ease: 'sine.in',
4242 duration: 2,
@@ -47,6 +47,8 @@ class="w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
4747 class =" w-3 mask-b-from-20% text-[var(--blue-ribbon)]"
4848 viewBox =" 0 0 9 16"
4949 fill =" none"
50+ aria-hidden =" true"
51+ focusable =" false"
5052 >
5153 <path
5254 d =" M4.5 0.749999L0.169873 8.25L8.83013 8.25L4.5 0.749999ZM4.5 15.75L5.25 15.75L5.25 7.5L4.5 7.5L3.75 7.5L3.75 15.75L4.5 15.75Z"
@@ -55,22 +57,24 @@ class="w-3 mask-b-from-20% text-[var(--blue-ribbon)]"
5557 </svg >
5658 </div >
5759
58- {{-- Label --}}
59- <div
60+ {{-- Text: part 1 --}}
61+ <span
6062 class =" transition duration-200 ease-out will-change-transform group-hover:translate-x-0.5 dark:text-slate-200"
6163 >
6264 Bifrost dropped on
63- </div >
65+ </span >
6466
65- {{-- Product Hunt --}}
66- <div
67+ {{-- Product Hunt badge --}}
68+ <span
6769 class =" flex items-center gap-1.5 rounded-full bg-white/50 py-1 pr-3 pl-1 transition duration-200 ease-out will-change-transform group-hover:scale-95 dark:bg-black/50"
6870 >
6971 <svg
7072 xmlns =" http://www.w3.org/2000/svg"
7173 class =" size-6 shrink-0"
7274 viewBox =" 0 0 21 20"
7375 fill =" none"
76+ aria-hidden =" true"
77+ focusable =" false"
7478 >
7579 <path
7680 fill-rule =" evenodd"
@@ -89,25 +93,25 @@ class="text-[var(--product-hunt)]"
8993 <span class =" font-medium whitespace-nowrap text-[var(--product-hunt)]" >
9094 Product Hunt
9195 </span >
92- </div >
96+ </span >
9397
94- {{-- Label --}}
95- <div
98+ {{-- Text: part 2 --}}
99+ <span
96100 class =" w-full transition duration-200 ease-out will-change-transform group-hover:-translate-x-0.5 xs:w-auto dark:text-slate-200"
97101 >
98102 Please upvote!
99- </div >
103+ </span >
100104
101- {{-- Right arrows --}}
102- <div class =" hidden gap-2 min-[31rem]:flex" >
105+ {{-- Decorative right arrows --}}
106+ <div
107+ class =" hidden gap-2 min-[31rem]:flex"
108+ aria-hidden =" true"
109+ >
103110 <svg
104111 x-data =" {
105112 init() {
106113 gsap.to($el, {
107- keyframes: {
108- autoAlpha: [0, 1, 0],
109- y: [0, -10],
110- },
114+ keyframes: { autoAlpha: [0, 1, 0], y: [0, -10] },
111115 repeat: -1,
112116 ease: 'sine.in',
113117 duration: 2,
@@ -118,6 +122,8 @@ class="w-full transition duration-200 ease-out will-change-transform group-hover
118122 class =" w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
119123 viewBox =" 0 0 9 16"
120124 fill =" none"
125+ aria-hidden =" true"
126+ focusable =" false"
121127 >
122128 <path
123129 d =" M4.5 0.749999L0.169873 8.25L8.83013 8.25L4.5 0.749999ZM4.5 15.75L5.25 15.75L5.25 7.5L4.5 7.5L3.75 7.5L3.75 15.75L4.5 15.75Z"
@@ -128,10 +134,7 @@ class="w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
128134 x-data =" {
129135 init() {
130136 gsap.to($el, {
131- keyframes: {
132- autoAlpha: [0, 1, 0],
133- y: [8, 0],
134- },
137+ keyframes: { autoAlpha: [0, 1, 0], y: [8, 0] },
135138 repeat: -1,
136139 ease: 'sine.in',
137140 duration: 2,
@@ -142,6 +145,8 @@ class="w-2.5 mask-b-from-20% text-[var(--product-hunt)]"
142145 class =" w-3 mask-b-from-20% text-[var(--blue-ribbon)]"
143146 viewBox =" 0 0 9 16"
144147 fill =" none"
148+ aria-hidden =" true"
149+ focusable =" false"
145150 >
146151 <path
147152 d =" M4.5 0.749999L0.169873 8.25L8.83013 8.25L4.5 0.749999ZM4.5 15.75L5.25 15.75L5.25 7.5L4.5 7.5L3.75 7.5L3.75 15.75L4.5 15.75Z"
@@ -150,15 +155,19 @@ class="w-3 mask-b-from-20% text-[var(--blue-ribbon)]"
150155 </svg >
151156 </div >
152157
153- {{-- Left blur --}}
154- <div class =" absolute -top-5 right-1/2 -z-10 translate-x-1/2" >
158+ {{-- Decorative blurs --}}
159+ <div
160+ class =" absolute -top-5 right-1/2 -z-10 translate-x-1/2"
161+ aria-hidden =" true"
162+ >
155163 <div
156164 class =" h-12 w-40 -translate-x-20 rotate-30 rounded-full bg-[var(--product-hunt)] blur-[30px] dark:bg-red-500/60"
157165 ></div >
158166 </div >
159-
160- {{-- Right blur --}}
161- <div class =" absolute -top-5 right-1/2 -z-10 translate-x-1/2" >
167+ <div
168+ class =" absolute -top-5 right-1/2 -z-10 translate-x-1/2"
169+ aria-hidden =" true"
170+ >
162171 <div
163172 class =" h-12 w-40 translate-x-20 rotate-30 rounded-full bg-[var(--blue-ribbon)] blur-[30px] dark:bg-blue-400/60"
164173 ></div >
0 commit comments