Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions src/assets/styles/tailwind.css
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,56 @@
}
}

@media (prefers-reduced-motion: no-preference) {
body {
animation: page-fade-in 480ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.js-enabled .scroll-fade,
.js-enabled .scroll-fade-stagger > * {
opacity: 0;
translate: 0 1.75rem;
transition:
opacity 680ms cubic-bezier(0.22, 1, 0.36, 1),
translate 680ms cubic-bezier(0.22, 1, 0.36, 1);
transition-delay: var(--scroll-fade-delay, 0ms);
will-change: opacity, translate;
}

.js-enabled .scroll-fade.is-visible,
.js-enabled .scroll-fade-stagger.is-visible > * {
opacity: 1;
translate: 0 0;
}

.js-enabled .scroll-fade:not(.is-visible),
.js-enabled .scroll-fade-stagger:not(.is-visible) > * {
transition-delay: 0ms;
}
}

@media (prefers-reduced-motion: reduce) {
body {
animation: none;
}

.scroll-fade,
.scroll-fade-stagger > * {
opacity: 1;
translate: 0 0;
transition: none;
}
}

@keyframes page-fade-in {
from {
opacity: 0;
}
to {
opacity: 1;
}
}

#header.scroll > div:first-child {
@apply bg-page md:bg-white/90 md:backdrop-blur-md;
box-shadow: 0 0.375rem 1.5rem 0 rgb(140 152 164 / 13%);
Expand Down
44 changes: 44 additions & 0 deletions src/components/common/BasicScripts.astro
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,7 @@ import { UI } from 'astrowind:config';
});
};
const onPageShow = function () {
document.documentElement.classList.add('js-enabled');
document.documentElement.classList.add('motion-safe:scroll-smooth');
const elem = document.querySelector('[data-aw-toggle-menu]');
if (elem) {
Expand Down Expand Up @@ -266,9 +267,52 @@ import { UI } from 'astrowind:config';
},
};

const PageMotion = {
observer: null,

start() {
document.documentElement.classList.add('js-enabled');
this.observer?.disconnect();

const elements = Array.from(document.querySelectorAll('.scroll-fade, .scroll-fade-stagger'));
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;

elements.forEach((element) => {
if (element.classList.contains('scroll-fade-stagger')) {
Array.from(element.children).forEach((child, index) => {
child.style.setProperty('--scroll-fade-delay', `${Math.min(index, 6) * 90}ms`);
});
}

if (prefersReducedMotion) {
element.classList.add('is-visible');
}
});

if (prefersReducedMotion || !elements.length) {
return;
}

this.observer = new IntersectionObserver(
(entries) => {
entries.forEach((entry) => {
entry.target.classList.toggle('is-visible', entry.isIntersecting);
});
},
{ threshold: 0.12, rootMargin: '0px 0px -10% 0px' }
);

elements.forEach((element) => {
this.observer.observe(element);
});
},
};

Observer.start();
PageMotion.start();

document.addEventListener('astro:after-swap', () => {
Observer.start();
PageMotion.start();
});
</script>
3 changes: 3 additions & 0 deletions src/layouts/Layout.astro
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@ const { language, textDirection } = I18N;
<html lang={language} dir={textDirection} class="2xl:text-[20px]">
<head>
<CommonMeta />
<script is:inline data-astro-rerun>
document.documentElement.classList.add('js-enabled');
</script>
<Favicons />
<CustomStyles />
<ApplyColorMode />
Expand Down
12 changes: 6 additions & 6 deletions src/pages/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ const metadata = {
<div class="relative mx-auto max-w-7xl px-4 sm:px-6">
<div class="pointer-events-none pt-[76px] 2xl:pt-[85px]"></div>
<div class="py-16 md:py-24 lg:py-28">
<div class="mx-auto max-w-4xl text-center">
<div class="scroll-fade-stagger mx-auto max-w-4xl text-center">
<img src="/images/logo.png" alt="xLLM logo" class="mx-auto h-28 w-auto" />
<h1 class="mt-3 text-3xl font-bold leading-tight tracking-tight text-heading md:text-3xl dark:text-white">
The <span class="font-extrabold text-[#EB2700]">High-Performance</span> Inference Framework for
Expand All @@ -44,7 +44,7 @@ const metadata = {
</div>
</div>

<div class="mx-auto mt-12 grid max-w-6xl gap-4 md:grid-cols-3">
<div class="scroll-fade-stagger mx-auto mt-12 grid max-w-6xl gap-4 md:grid-cols-3">
<div
class="rounded-3xl border border-slate-200/80 bg-white/75 p-6 dark:border-slate-700 dark:bg-slate-900/50"
>
Expand Down Expand Up @@ -88,7 +88,7 @@ const metadata = {

<section id="community" class="not-prose">
<div class="mx-auto max-w-7xl px-4 py-10 md:px-6 md:py-12 lg:py-16">
<div class="mx-auto max-w-3xl text-center">
<div class="scroll-fade mx-auto max-w-3xl text-center">
<p class="text-sm font-semibold uppercase tracking-wide text-[rgba(235,39,0,0.75)]">Got Questions?</p>
<h2 class="mt-3 text-2xl font-bold tracking-tight text-heading md:text-3xl dark:text-white">
We are here to help
Expand All @@ -99,7 +99,7 @@ const metadata = {
</p>
</div>

<div class="mx-auto mt-8 grid max-w-6xl gap-4 md:grid-cols-3">
<div class="scroll-fade-stagger mx-auto mt-8 grid max-w-6xl gap-4 md:grid-cols-3">
<a
href="https://docs.xllm-ai.com/en/"
target="_blank"
Expand Down Expand Up @@ -148,15 +148,15 @@ const metadata = {

<section id="resources" class="not-prose">
<div class="mx-auto max-w-7xl px-4 py-10 md:px-6 md:py-12 lg:py-16">
<div class="mx-auto max-w-3xl text-center">
<div class="scroll-fade mx-auto max-w-3xl text-center">
<p class="text-sm font-semibold uppercase tracking-wide text-[rgba(235,39,0,0.75)]">Resources</p>
<h2 class="mt-3 text-2xl font-bold tracking-tight text-heading md:text-3xl dark:text-white">
Explore docs, paper, and releases
</h2>
<p class="mt-3 text-base text-muted md:text-lg">Core project resources in one place.</p>
</div>

<div class="mx-auto mt-8 grid max-w-6xl gap-4 md:grid-cols-3">
<div class="scroll-fade-stagger mx-auto mt-8 grid max-w-6xl gap-4 md:grid-cols-3">
<a
href="https://docs.xllm-ai.com/en/"
target="_blank"
Expand Down
2 changes: 1 addition & 1 deletion src/pages/publications.astro
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const publications = [...(publicationsData.publications as Publication[])].rever
<ol class="space-y-2">
{
publications.map((publication) => (
<li class="group relative overflow-hidden rounded-2xl border border-transparent bg-white/75 px-3 py-2 dark:bg-slate-900/50">
<li class="scroll-fade group relative overflow-hidden rounded-2xl border border-transparent bg-white/75 px-3 py-2 dark:bg-slate-900/50">
<div
class="pointer-events-none absolute inset-0 z-0 rounded-2xl opacity-0 shadow-[inset_0_0_0_9999px_rgba(235,39,0,0.03)] transition-opacity duration-300 ease-out will-change-[opacity] group-hover:opacity-100 group-hover:duration-200 group-focus-within:opacity-100 dark:shadow-[inset_0_0_0_9999px_rgba(235,39,0,0.2)]"
aria-hidden="true"
Expand Down
4 changes: 2 additions & 2 deletions src/pages/supported-models.astro
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ const supportedModelGroups = supportedModelsData.supportedModelGroups as Support
<Layout metadata={metadata}>
<section class="not-prose">
<div class="mx-auto max-w-7xl px-4 py-12 md:px-6 md:py-16">
<div class="mx-auto max-w-4xl text-center">
<div class="scroll-fade mx-auto max-w-4xl text-center">
<h1 class="mt-3 text-3xl font-bold tracking-tight text-heading md:text-4xl dark:text-white">
Mainstream Models Supported by xLLM
</h1>
Expand All @@ -34,7 +34,7 @@ const supportedModelGroups = supportedModelsData.supportedModelGroups as Support
supportedModelGroups.map((group) => (
<section
id={group.id}
class="card-hover rounded-[2rem] border border-slate-200/80 bg-white/75 p-6 dark:border-slate-700 dark:bg-slate-900/50"
class="scroll-fade card-hover rounded-[2rem] border border-slate-200/80 bg-white/75 p-6 dark:border-slate-700 dark:bg-slate-900/50"
>
<div class="max-w-3xl">
<h2 class="text-2xl font-semibold text-heading dark:text-white">{group.title}</h2>
Expand Down
4 changes: 2 additions & 2 deletions src/pages/team.astro
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ const coreTeam = coreTeamData.coreTeam as CoreTeamMember[];
<Layout metadata={metadata}>
<section class="not-prose">
<div class="mx-auto max-w-7xl px-4 py-12 md:px-6 md:py-16">
<div class="mx-auto max-w-4xl text-center">
<div class="scroll-fade-stagger mx-auto max-w-4xl text-center">
<p class="text-base font-semibold text-heading md:text-lg dark:text-white">
Thanks to all the following
<a
Expand All @@ -39,7 +39,7 @@ const coreTeam = coreTeamData.coreTeam as CoreTeamMember[];
</div>

<div
class="card-hover mx-auto mt-10 max-w-6xl overflow-hidden rounded-[2rem] border border-slate-200/80 bg-white/75 dark:border-slate-700 dark:bg-slate-900/50"
class="scroll-fade card-hover mx-auto mt-10 max-w-6xl overflow-hidden rounded-[2rem] border border-slate-200/80 bg-white/75 dark:border-slate-700 dark:bg-slate-900/50"
>
<div class="px-6 pt-6 text-center md:px-8">
<h2 class="text-2xl font-semibold text-heading dark:text-white">xLLM Core Team</h2>
Expand Down
Loading