animations

This commit is contained in:
2025-04-17 19:04:01 +02:00
parent 52224bd9a6
commit daac21acb5
5 changed files with 61 additions and 31 deletions
+3 -3
View File
@@ -10,13 +10,13 @@ export default function Download() {
<div className="flex flex-col bg-[url('/background.png')] bg-center bg-no-repeat h-52"> <div className="flex flex-col bg-[url('/background.png')] bg-center bg-no-repeat h-52">
<Header /> <Header />
<h1 className="text-5xl font-black m-auto w-max font-['Panton']"> <h1 className="text-5xl font-black m-auto w-max font-['Panton'] fade-in">
DOWNLOAD DOWNLOAD
</h1> </h1>
</div> </div>
<div className="w-full h-full flex flex-col items-center pt-6"> <div className="w-full h-full flex flex-col items-center pt-6 fade-in-up">
Release downloads aren't available yet :( The launcher isn't available yet :(
<Link <Link
href="https://github.com/saturnclientmc/saturnclient/releases/" href="https://github.com/saturnclientmc/saturnclient/releases/"
target="_blank" target="_blank"
+43
View File
@@ -84,3 +84,46 @@ body {
::selection { ::selection {
background: #e2bf7d; background: #e2bf7d;
} }
@keyframes fadeInUp {
0% {
opacity: 0;
transform: translateY(40px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
.fade-in-up {
animation: fadeInUp 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@keyframes fadeInDown {
0% {
opacity: 0;
transform: translateY(-40px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
.fade-in-down {
animation: fadeInDown 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.fade-in {
animation: fadeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
+2 -23
View File
@@ -1,29 +1,8 @@
import Footer from "@/components/Footer"; import Footer from "@/components/Footer";
import Header from "@/components/Header"; import Header from "@/components/Header";
import listNews from "@/lib/news"; import listNews from "@/lib/news";
import Image from "next/image";
import Link from "next/link"; import Link from "next/link";
// const newsList = [
// {
// authors: [],
// title: "Hello World",
// description: "lorem ipsum ipsum lorem",
// image: "/background.png",
// date: "2025-04-16",
// id: "",
// },
// ];
// const newsList = Array(3 * 6).fill({
// authors: [],
// title: "Hello World",
// description: "lorem ipsum ipsum lorem",
// image: "/background.png",
// date: "2025-04-16",
// id: "",
// });
const newsList = listNews(); const newsList = listNews();
export default function News() { export default function News() {
@@ -32,7 +11,7 @@ export default function News() {
<div className="flex flex-col bg-[url('/background.png')] bg-center bg-no-repeat h-52"> <div className="flex flex-col bg-[url('/background.png')] bg-center bg-no-repeat h-52">
<Header /> <Header />
<h1 className="text-5xl font-black m-auto w-max font-['Panton']"> <h1 className="text-5xl font-black m-auto w-max font-['Panton'] fade-in">
CLIENT NEWS CLIENT NEWS
</h1> </h1>
</div> </div>
@@ -41,7 +20,7 @@ export default function News() {
TODO: implement search and filtering TODO: implement search and filtering
</div> </div>
<div className="py-8 px-5 w-full grid grid-rows-6 grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-5"> <div className="py-8 px-5 w-full grid grid-rows-6 grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-5 fade-in-up">
{newsList.map((news, i) => ( {newsList.map((news, i) => (
<Link <Link
href={`/news/${news.id}`} href={`/news/${news.id}`}
+12 -4
View File
@@ -22,16 +22,24 @@ export default function Home() {
<Header /> <Header />
<div className="flex-1 flex flex-col text-2xl mt-40 items-center"> <div className="flex-1 flex flex-col text-2xl mt-40 items-center">
<Image src="/logo.png" alt="Logo" width={240} height={240} /> <Image
<h1 className="text-5xl font-black font-['Panton']">Saturn Client</h1> src="/logo.png"
<p className="text-xl text-white mix-blend-difference font-['Panton']"> alt="Logo"
width={240}
height={240}
className="fade-in-up"
/>
<h1 className="text-5xl font-black font-['Panton'] fade-in-up">
Saturn Client
</h1>
<p className="text-xl text-white mix-blend-difference font-['Panton'] fade-in-up">
The best open source Minecraft client The best open source Minecraft client
</p> </p>
{/* Download button */} {/* Download button */}
<Link <Link
href="/download" href="/download"
className="hover:cursor-pointer mt-10 relative bg-red border text-white py-4 px-6 rounded-xl backdrop-blur-xs w-max group transition-colors duration-300 hover:text-[#e2bf7d] animate-fadeIn" className="hover:cursor-pointer mt-10 relative bg-red border text-white py-4 px-6 rounded-xl backdrop-blur-xs w-max group transition-colors duration-300 hover:text-[#e2bf7d] fade-in"
> >
Download Download
</Link> </Link>
+1 -1
View File
@@ -3,7 +3,7 @@ import Link from "next/link";
export default function Header() { export default function Header() {
return ( return (
<header className="text-white bg-white/5 backdrop-blur-xl py-4 text-center w-max mx-auto px-6 rounded-2xl mt-2"> <header className="text-white bg-white/5 backdrop-blur-xl py-4 text-center w-max mx-auto px-6 rounded-2xl mt-2 fade-in-down">
<div className="flex flex-row w-max mx-auto gap-4"> <div className="flex flex-row w-max mx-auto gap-4">
<Link href="/"> <Link href="/">
<House className="transition-colors duration-300 hover:text-[#e2bf7d] animate-fadeIn" /> <House className="transition-colors duration-300 hover:text-[#e2bf7d] animate-fadeIn" />