diff --git a/package-lock.json b/package-lock.json
index 21cb0afa0..e14cd816e 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,7 +9,8 @@
"version": "0.0.0",
"dependencies": {
"react": "19.0.0-rc-8b08e99e-20240713",
- "react-dom": "19.0.0-rc-8b08e99e-20240713"
+ "react-dom": "19.0.0-rc-8b08e99e-20240713",
+ "react-router-dom": "^6.25.1"
},
"devDependencies": {
"@types/react": "^18.3.3",
@@ -988,6 +989,14 @@
"node": ">= 8"
}
},
+ "node_modules/@remix-run/router": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.18.0.tgz",
+ "integrity": "sha512-L3jkqmqoSVBVKHfpGZmLrex0lxR5SucGA0sUfFzGctehw+S/ggL9L/0NnC5mw6P8HUWpFZ3nQw3cRApjjWx9Sw==",
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
"node_modules/@rollup/rollup-android-arm-eabi": {
"version": "4.18.1",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz",
@@ -3803,6 +3812,36 @@
"node": ">=0.10.0"
}
},
+ "node_modules/react-router-dom": {
+ "version": "6.25.1",
+ "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.25.1.tgz",
+ "integrity": "sha512-0tUDpbFvk35iv+N89dWNrJp+afLgd+y4VtorJZuOCXK0kkCWjEvb3vTJM++SYvMEpbVwXKf3FjeVveVEb6JpDQ==",
+ "dependencies": {
+ "@remix-run/router": "1.18.0",
+ "react-router": "6.25.1"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.8",
+ "react-dom": ">=16.8"
+ }
+ },
+ "node_modules/react-router-dom/node_modules/react-router": {
+ "version": "6.25.1",
+ "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.25.1.tgz",
+ "integrity": "sha512-u8ELFr5Z6g02nUtpPAggP73Jigj1mRePSwhS/2nkTrlPU5yEkH1vYzWNyvSnSzeeE2DNqWdH+P8OhIh9wuXhTw==",
+ "dependencies": {
+ "@remix-run/router": "1.18.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.8"
+ }
+ },
"node_modules/reflect.getprototypeof": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz",
diff --git a/package.json b/package.json
index 98faea3e4..052a5d8b4 100644
--- a/package.json
+++ b/package.json
@@ -11,7 +11,8 @@
},
"dependencies": {
"react": "19.0.0-rc-8b08e99e-20240713",
- "react-dom": "19.0.0-rc-8b08e99e-20240713"
+ "react-dom": "19.0.0-rc-8b08e99e-20240713",
+ "react-router-dom": "^6.25.1"
},
"devDependencies": {
"@types/react": "^18.3.3",
diff --git a/src/App.jsx b/src/App.jsx
deleted file mode 100644
index b1d9af3ca..000000000
--- a/src/App.jsx
+++ /dev/null
@@ -1,7 +0,0 @@
-const App = () => {
- return (
-
Hello World
- )
-}
-
-export default App
\ No newline at end of file
diff --git a/src/layouts/rootLayout/RootLayout.css b/src/layouts/rootLayout/RootLayout.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/layouts/rootLayout/RootLayout.jsx b/src/layouts/rootLayout/RootLayout.jsx
new file mode 100644
index 000000000..8368cacae
--- /dev/null
+++ b/src/layouts/rootLayout/RootLayout.jsx
@@ -0,0 +1,8 @@
+import './RootLayout.css';
+export const RootLayout = () => {
+ return (
+
+
+
+ );
+};
diff --git a/src/main.jsx b/src/main.jsx
index 54b39dd1d..16ace597f 100644
--- a/src/main.jsx
+++ b/src/main.jsx
@@ -1,10 +1,11 @@
-import React from 'react'
-import ReactDOM from 'react-dom/client'
-import App from './App.jsx'
-import './index.css'
+import React from 'react';
+import ReactDOM from 'react-dom/client';
+import { RouterProvider } from 'react-router-dom';
+import { router } from './routes/router.jsx';
+import './index.css';
ReactDOM.createRoot(document.getElementById('root')).render(
-
- ,
-)
+
+
+);
diff --git a/src/pages/chatpage/ChatPage.css b/src/pages/chatpage/ChatPage.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/pages/chatpage/ChatPage.tsx b/src/pages/chatpage/ChatPage.tsx
new file mode 100644
index 000000000..bffdd16fd
--- /dev/null
+++ b/src/pages/chatpage/ChatPage.tsx
@@ -0,0 +1,8 @@
+import React from 'react'
+import './ChatPage.css'
+
+export const ChatPage = () => {
+ return (
+ ChatPage
+ )
+}
diff --git a/src/pages/dashboard/DashboardPage.css b/src/pages/dashboard/DashboardPage.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/pages/dashboard/DashboardPage.jsx b/src/pages/dashboard/DashboardPage.jsx
new file mode 100644
index 000000000..d5868e83a
--- /dev/null
+++ b/src/pages/dashboard/DashboardPage.jsx
@@ -0,0 +1,5 @@
+import './DashboardPage.css';
+
+export const DashboardPage = () => {
+ return DashboardPage
;
+};
diff --git a/src/pages/homepage/HomePage.css b/src/pages/homepage/HomePage.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/pages/homepage/HomePage.jsx b/src/pages/homepage/HomePage.jsx
new file mode 100644
index 000000000..dbb431c2b
--- /dev/null
+++ b/src/pages/homepage/HomePage.jsx
@@ -0,0 +1,4 @@
+import './HomePage.css';
+export const HomePage = () => {
+ return HomePage
;
+};
diff --git a/src/pages/index.jsx b/src/pages/index.jsx
new file mode 100644
index 000000000..fc491d625
--- /dev/null
+++ b/src/pages/index.jsx
@@ -0,0 +1,5 @@
+export { HomePage } from './homepage/HomePage';
+export { SignInPage } from './signInPage/SignInPage';
+export { ChatPage } from './chatpage/ChatPage';
+export { DashboardPage } from './dashboard/DashboardPage';
+export { SignUpPage } from './signUpPage/SignUpPage';
diff --git a/src/pages/signInPage/SignInPage.css b/src/pages/signInPage/SignInPage.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/pages/signInPage/SignInPage.jsx b/src/pages/signInPage/SignInPage.jsx
new file mode 100644
index 000000000..5e10958ff
--- /dev/null
+++ b/src/pages/signInPage/SignInPage.jsx
@@ -0,0 +1,5 @@
+import './SignInPage.css';
+
+export const SignInPage = () => {
+ return SignInPage
;
+};
diff --git a/src/pages/signUpPage/SignUpPage.css b/src/pages/signUpPage/SignUpPage.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/pages/signUpPage/SignUpPage.jsx b/src/pages/signUpPage/SignUpPage.jsx
new file mode 100644
index 000000000..ade2e5d7f
--- /dev/null
+++ b/src/pages/signUpPage/SignUpPage.jsx
@@ -0,0 +1,5 @@
+import './SignUpPage.css';
+
+export const SignUpPage = () => {
+ return SignUpPage
;
+};
diff --git a/src/routes/router.jsx b/src/routes/router.jsx
new file mode 100644
index 000000000..e6b9089a3
--- /dev/null
+++ b/src/routes/router.jsx
@@ -0,0 +1,23 @@
+import { createBrowserRouter } from 'react-router-dom';
+import { ChatPage, DashboardPage, HomePage } from '../pages';
+
+export const router = createBrowserRouter([
+ {
+ path: '/',
+ element: ,
+ },
+ {
+ path: '/dashboard',
+ children: [
+ { index: true, element: },
+ {
+ path: '/dashboard/chats/:id',
+ element: ,
+ },
+ ],
+ },
+ {
+ path: '/',
+ element: ,
+ },
+]);