diff --git a/.prettierrc b/.prettierrc
index 29a8d4e..ebdecb7 100644
--- a/.prettierrc
+++ b/.prettierrc
@@ -1,4 +1,5 @@
{
"tabWidth": 2,
- "useTabs": true
+ "useTabs": true,
+ "printWidth": 160
}
\ No newline at end of file
diff --git a/src/app/page.tsx b/src/app/page.tsx
index 215e31c..ed195a3 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -5,6 +5,7 @@ import { Suspense } from "react";
import { auth } from "@/lib/auth";
import { prisma } from "@/lib/prisma";
+import Countdown from "@/components/countdown";
import MiiList from "@/components/mii-list";
import Skeleton from "@/components/mii-list/skeleton";
@@ -54,6 +55,7 @@ export default async function Page({ searchParams }: Props) {
<>
{tags ? `Miis tagged with '${tags}' - TomodachiShare` : "TomodachiShare - index mii list"}
+
}>
diff --git a/src/components/countdown.tsx b/src/components/countdown.tsx
new file mode 100644
index 0000000..91c551c
--- /dev/null
+++ b/src/components/countdown.tsx
@@ -0,0 +1,65 @@
+"use client";
+
+import { useEffect, useState } from "react";
+
+export default function Countdown() {
+ const [days, setDays] = useState(31);
+ const [hours, setHours] = useState(59);
+ const [minutes, setMinutes] = useState(59);
+ const [seconds, setSeconds] = useState(59);
+
+ const targetDate = new Date("2026-04-16T00:00:00Z").getTime();
+
+ useEffect(() => {
+ const interval = setInterval(() => {
+ const now = new Date().getTime();
+ const distance = targetDate - now;
+
+ if (distance < 0) {
+ clearInterval(interval);
+ setDays(0);
+ setHours(0);
+ setMinutes(0);
+ setSeconds(0);
+ return;
+ }
+
+ setDays(Math.floor(distance / (1000 * 60 * 60 * 24)));
+ setHours(Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)));
+ setMinutes(Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)));
+ setSeconds(Math.floor((distance % (1000 * 60)) / 1000));
+ }, 100);
+
+ return () => clearInterval(interval);
+ }, []);
+
+ return (
+
+
+
+
Living the Dream
+ releases in:
+
+
+
+
+ {days}
+ days
+
+
+ {hours}
+ hours
+
+
+ {minutes}
+ minutes
+
+
+ {seconds}
+ seconds
+
+
+
+
+ );
+}