aboutsummaryrefslogtreecommitdiff
path: root/source/96/src/app
diff options
context:
space:
mode:
Diffstat (limited to 'source/96/src/app')
-rw-r--r--source/96/src/app/globals.css5
-rw-r--r--source/96/src/app/layout.js30
-rw-r--r--source/96/src/app/not-found.js31
-rw-r--r--source/96/src/app/opengraph-image.pngbin0 -> 146823 bytes
-rw-r--r--source/96/src/app/page.js59
-rw-r--r--source/96/src/app/twitter-image.pngbin0 -> 146823 bytes
6 files changed, 125 insertions, 0 deletions
diff --git a/source/96/src/app/globals.css b/source/96/src/app/globals.css
new file mode 100644
index 0000000..dad740a
--- /dev/null
+++ b/source/96/src/app/globals.css
@@ -0,0 +1,5 @@
+@import "tailwindcss";
+
+p {
+ text-align: justify;
+}
diff --git a/source/96/src/app/layout.js b/source/96/src/app/layout.js
new file mode 100644
index 0000000..7d7f919
--- /dev/null
+++ b/source/96/src/app/layout.js
@@ -0,0 +1,30 @@
+import "./globals.css";
+import { Space_Mono } from "next/font/google";
+
+const mainFont = Space_Mono({
+ weight: ["400", "700"],
+ style: ["normal", "italic"],
+ subsets: ["latin-ext"],
+ display: "swap",
+});
+
+export const metadata = {
+ metadataBase: new URL("https://96.zue.dev"),
+ title: "96: Where creatives thrive.",
+ description:
+ "Experience a fresh, open-source revolution in digital empowerment. We fuse influencer marketing with post-modern innovation into a full-service online talent management platform—designed so you can shine while we handle every digital detail.",
+ icons: {
+ icon: "/96_logo.png",
+ },
+};
+
+export default ({ children }) => {
+ return (
+ <html
+ lang="en"
+ className={`${mainFont.className} bg-linear-to-br from-green-500 to-emerald-500 text-black min-h-screen`}
+ >
+ <body>{children}</body>
+ </html>
+ );
+};
diff --git a/source/96/src/app/not-found.js b/source/96/src/app/not-found.js
new file mode 100644
index 0000000..7298535
--- /dev/null
+++ b/source/96/src/app/not-found.js
@@ -0,0 +1,31 @@
+"use client";
+
+import { useEffect, useState } from "react";
+import { useRouter } from "next/navigation";
+
+export default () => {
+ const router = useRouter();
+
+ const [seconds, setSeconds] = useState(5);
+
+ useEffect(() => {
+ const interval = setInterval(() => {
+ setSeconds((prev) => prev - 1);
+ }, 1000);
+
+ if (seconds === 0) {
+ router.push("/");
+ }
+
+ return () => clearInterval(interval);
+ }, [seconds]);
+
+ return (
+ <div className="min-h-screen flex flex-col justify-center items-center space-y-4">
+ <h2 className="text-3xl font-bold">404 - Page Not Found</h2>
+ <p>
+ Redirecting to <a href="/">Home</a> in {seconds} seconds...
+ </p>
+ </div>
+ );
+};
diff --git a/source/96/src/app/opengraph-image.png b/source/96/src/app/opengraph-image.png
new file mode 100644
index 0000000..5a71def
--- /dev/null
+++ b/source/96/src/app/opengraph-image.png
Binary files differ
diff --git a/source/96/src/app/page.js b/source/96/src/app/page.js
new file mode 100644
index 0000000..1ceba7d
--- /dev/null
+++ b/source/96/src/app/page.js
@@ -0,0 +1,59 @@
+import Link from "next/link";
+import { metadata } from "./layout";
+import FadeIn from "@/components/animations/FadeIn";
+import talent from "@/data/talent";
+
+export default () => {
+ return (
+ <>
+ <div className="flex flex-col justify-center max-w-2xl mx-auto p-8 space-y-4 min-h-screen">
+ <FadeIn props={{ delay: 0.25 }}>
+ <h1 className="text-4xl font-bold">{metadata.title}</h1>
+ </FadeIn>
+
+ <FadeIn props={{ delay: 0.5 }}>
+ <p className="text-lg">{metadata.description}</p>
+ </FadeIn>
+
+ <FadeIn props={{ delay: 0.75 }}>
+ <div className="flex justify-between items-center gap-4">
+ <div className="flex flex-row gap-4">
+ {[
+ {
+ href: "https://x.com/area96digital",
+ icon: "https://cdn.simpleicons.org/x/black",
+ title: "X/Twitter",
+ },
+ {
+ href: "https://bsky.app/profile/96.zue.dev",
+ icon: "https://cdn.simpleicons.org/bluesky/black",
+ title: "Bluesky",
+ },
+ ].map((social) => (
+ <Link
+ href={social.href}
+ key={social.title}
+ className="transform hover:scale-110 transition-transform"
+ >
+ <img
+ src={social.icon}
+ className="h-[2rem] w-[2rem] object-contain"
+ alt={social.title}
+ title={social.title}
+ />
+ </Link>
+ ))}
+ </div>
+
+ <span className="text-xs opacity-50 text-right p-1">
+ "96" is made with ❤️ by{" "}
+ <a href="https://zue.dev" target="_blank">
+ zue.dev
+ </a>
+ </span>
+ </div>
+ </FadeIn>
+ </div>
+ </>
+ );
+};
diff --git a/source/96/src/app/twitter-image.png b/source/96/src/app/twitter-image.png
new file mode 100644
index 0000000..5a71def
--- /dev/null
+++ b/source/96/src/app/twitter-image.png
Binary files differ