From 51bcb25ef0c4f5c517c1887dd24d225f63412f09 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=84=9D=EC=B0=AC=20=EC=9C=A4?= <ysc0731@ajou.ac.kr>
Date: Sun, 8 Dec 2024 21:22:19 +0900
Subject: [PATCH] =?UTF-8?q?feat:=20404NotFoundPage=20=EC=B6=94=EA=B0=80=20?=
 =?UTF-8?q?=EA=B0=9C=EB=B0=9C=20(#14)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/App.js                 |  2 ++
 src/pages/NotFoundPage.jsx | 28 ++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+)
 create mode 100644 src/pages/NotFoundPage.jsx

diff --git a/src/App.js b/src/App.js
index 5cc4e04..ced6082 100644
--- a/src/App.js
+++ b/src/App.js
@@ -11,6 +11,7 @@ import Footer from "./components/layout/Footer";
 import BodyLayout from "./components/layout/BodyLayout";
 import HeaderLogoBar from "./components/layout/HeaderLogoBar";
 import SchedulePage from "./pages/SchedulePage";
+import NotFoundPage from "./pages/NotFoundPage";
 
 const App = () => {
   return (
@@ -29,6 +30,7 @@ const App = () => {
             />
             <Route path="/mypage" element={<MyPage />} />
             <Route path="/login" element={<LoginPage />} />
+            <Route path="*" element={<NotFoundPage />} />
           </Routes>
         </BodyLayout>
         <Footer />
diff --git a/src/pages/NotFoundPage.jsx b/src/pages/NotFoundPage.jsx
new file mode 100644
index 0000000..1612743
--- /dev/null
+++ b/src/pages/NotFoundPage.jsx
@@ -0,0 +1,28 @@
+import React from "react";
+import { useNavigate } from "react-router-dom";
+import Button from "../components/Button"; // 기존 디자인 시스템의 버튼 컴포넌트
+
+const NotFoundPage = () => {
+  const navigate = useNavigate();
+
+  const handleGoHome = () => {
+    navigate("/");
+  };
+
+  return (
+    <div className="flex flex-col items-center justify-center min-h-screen text-center bg-gray-50">
+      <h1 className="text-6xl font-bold text-primary-500">404</h1>
+      <p className="mt-4 text-lg text-gray-700">
+        페이지를 찾을 수 없습니다. 잘못된 URL을 입력했거나 페이지가 삭제되었을
+        수 있습니다.
+      </p>
+      <div className="mt-6">
+        <Button size="lg" theme="indigo" onClick={handleGoHome}>
+          홈으로 이동
+        </Button>
+      </div>
+    </div>
+  );
+};
+
+export default NotFoundPage;
-- 
GitLab