diff --git a/.pnp.cjs b/.pnp.cjs
index 477a9161..d37c8212 100755
--- a/.pnp.cjs
+++ b/.pnp.cjs
@@ -3928,6 +3928,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) {
["regenerator-runtime", "npm:0.14.0"]\
],\
"linkType": "HARD"\
+ }],\
+ ["npm:7.23.1", {\
+ "packageLocation": "./.yarn/cache/@babel-runtime-npm-7.23.1-9b8781107c-0cd0d43e6e.zip/node_modules/@babel/runtime/",\
+ "packageDependencies": [\
+ ["@babel/runtime", "npm:7.23.1"],\
+ ["regenerator-runtime", "npm:0.14.0"]\
+ ],\
+ "linkType": "HARD"\
}]\
]],\
["@babel/template", [\
@@ -4143,6 +4151,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) {
["react", "npm:18.2.0"],\
["react-dom", "virtual:040d27df013de8c2443d97cd34785bd6338b0d64a4a625937768b1a38353fca7b8404d53a1248b5c67570c2a031bc43d100149c15012f4485eb41e15d763240d#npm:18.2.0"],\
["react-is", "npm:18.2.0"],\
+ ["react-kakao-maps-sdk", "virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:1.1.21"],\
["react-toastify", "virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:9.1.3"],\
["styled-components", "virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:5.3.11"],\
["styled-reset", "virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:4.5.1"],\
@@ -6525,6 +6534,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) {
"linkType": "HARD"\
}]\
]],\
+ ["kakao.maps.d.ts", [\
+ ["npm:0.1.39", {\
+ "packageLocation": "./.yarn/cache/kakao.maps.d.ts-npm-0.1.39-333b43bbc2-b89c3ee7d6.zip/node_modules/kakao.maps.d.ts/",\
+ "packageDependencies": [\
+ ["kakao.maps.d.ts", "npm:0.1.39"]\
+ ],\
+ "linkType": "HARD"\
+ }]\
+ ]],\
["lines-and-columns", [\
["npm:1.2.4", {\
"packageLocation": "./.yarn/cache/lines-and-columns-npm-1.2.4-d6c7cc5799-0c37f9f7fa.zip/node_modules/lines-and-columns/",\
@@ -7104,6 +7122,34 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) {
"linkType": "HARD"\
}]\
]],\
+ ["react-kakao-maps-sdk", [\
+ ["npm:1.1.21", {\
+ "packageLocation": "./.yarn/cache/react-kakao-maps-sdk-npm-1.1.21-dbdf5986a0-c30bd27f79.zip/node_modules/react-kakao-maps-sdk/",\
+ "packageDependencies": [\
+ ["react-kakao-maps-sdk", "npm:1.1.21"]\
+ ],\
+ "linkType": "SOFT"\
+ }],\
+ ["virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:1.1.21", {\
+ "packageLocation": "./.yarn/__virtual__/react-kakao-maps-sdk-virtual-afec6341b7/0/cache/react-kakao-maps-sdk-npm-1.1.21-dbdf5986a0-c30bd27f79.zip/node_modules/react-kakao-maps-sdk/",\
+ "packageDependencies": [\
+ ["react-kakao-maps-sdk", "virtual:8ec4233c825b2c709f2ff549456a05fb98060d621f5df14748cda36fdb51190eccc2e438466f7464c85557cdad97eb73aa6580e78bca957a1149bfc58c6ddf34#npm:1.1.21"],\
+ ["@babel/runtime", "npm:7.23.1"],\
+ ["@types/react", "npm:18.2.21"],\
+ ["@types/react-dom", "npm:18.2.7"],\
+ ["kakao.maps.d.ts", "npm:0.1.39"],\
+ ["react", "npm:18.2.0"],\
+ ["react-dom", "virtual:040d27df013de8c2443d97cd34785bd6338b0d64a4a625937768b1a38353fca7b8404d53a1248b5c67570c2a031bc43d100149c15012f4485eb41e15d763240d#npm:18.2.0"]\
+ ],\
+ "packagePeers": [\
+ "@types/react-dom",\
+ "@types/react",\
+ "react-dom",\
+ "react"\
+ ],\
+ "linkType": "HARD"\
+ }]\
+ ]],\
["react-slick", [\
["npm:0.29.0", {\
"packageLocation": "./.yarn/cache/react-slick-npm-0.29.0-28db290b04-67ce498191.zip/node_modules/react-slick/",\
diff --git a/apps/jurumarble/package.json b/apps/jurumarble/package.json
index c5c17e93..757ca862 100644
--- a/apps/jurumarble/package.json
+++ b/apps/jurumarble/package.json
@@ -22,6 +22,7 @@
"react": "18.2.0",
"react-dom": "18.2.0",
"react-is": "^18.2.0",
+ "react-kakao-maps-sdk": "^1.1.21",
"react-toastify": "^9.1.3",
"styled-components": "^5.3.6",
"styled-reset": "^4.5.1"
diff --git a/apps/jurumarble/public/favicon.ico b/apps/jurumarble/public/favicon.ico
new file mode 100644
index 00000000..44e9b6f7
Binary files /dev/null and b/apps/jurumarble/public/favicon.ico differ
diff --git a/apps/jurumarble/src/app/layout.tsx b/apps/jurumarble/src/app/layout.tsx
index 3fe7bf4c..0aa644b1 100644
--- a/apps/jurumarble/src/app/layout.tsx
+++ b/apps/jurumarble/src/app/layout.tsx
@@ -6,6 +6,8 @@ import type { Metadata } from "next";
import { ToastContainer } from "react-toastify";
import "react-toastify/dist/ReactToastify.css";
import { injectStyle } from "react-toastify/dist/inject-style";
+import { KAKAO_MAP_API_KEY } from "lib/constants";
+import Script from "next/script";
export const metadata: Metadata = {
title: "주루마블",
@@ -16,6 +18,12 @@ if (typeof window !== "undefined") {
injectStyle();
}
+declare global {
+ interface Window {
+ kakao: any;
+ }
+}
+
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
@@ -33,6 +41,11 @@ export default function RootLayout({ children }: { children: React.ReactNode })
+
+