From 944a05be284866f9bb19ecbc2874184dc3f44139 Mon Sep 17 00:00:00 2001 From: Kunal Bunkar Date: Thu, 12 Mar 2026 12:10:37 +0530 Subject: [PATCH 1/2] fix: improve error handling and add routing --- package-lock.json | 64 ++++++++++++++++++++++++++++++++++++++++++++--- package.json | 3 ++- src/App.tsx | 26 ++++++++++++++++++- src/main.tsx | 5 +++- 4 files changed, 92 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index ab0e168..fc665b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,16 @@ { - "name": "orgexplorer", + "name": "OrgExplorer", "version": "0.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "orgexplorer", + "name": "OrgExplorer", "version": "0.0.0", "dependencies": { "react": "^19.2.0", - "react-dom": "^19.2.0" + "react-dom": "^19.2.0", + "react-router-dom": "^7.13.1" }, "devDependencies": { "@eslint/js": "^9.39.1", @@ -1480,6 +1481,19 @@ "dev": true, "license": "MIT" }, + "node_modules/cookie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -2607,6 +2621,44 @@ "node": ">=0.10.0" } }, + "node_modules/react-router": { + "version": "7.13.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.13.1.tgz", + "integrity": "sha512-td+xP4X2/6BJvZoX6xw++A2DdEi++YypA69bJUV5oVvqf6/9/9nNlD70YO1e9d3MyamJEBQFEzk6mbfDYbqrSA==", + "license": "MIT", + "dependencies": { + "cookie": "^1.0.1", + "set-cookie-parser": "^2.6.0" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } + } + }, + "node_modules/react-router-dom": { + "version": "7.13.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.13.1.tgz", + "integrity": "sha512-UJnV3Rxc5TgUPJt2KJpo1Jpy0OKQr0AjgbZzBFjaPJcFOb2Y8jA5H3LT8HUJAiRLlWrEXWHbF1Z4SCZaQjWDHw==", + "license": "MIT", + "dependencies": { + "react-router": "7.13.1" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + } + }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -2673,6 +2725,12 @@ "semver": "bin/semver.js" } }, + "node_modules/set-cookie-parser": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.2.tgz", + "integrity": "sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==", + "license": "MIT" + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", diff --git a/package.json b/package.json index d75669c..497079b 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ }, "dependencies": { "react": "^19.2.0", - "react-dom": "^19.2.0" + "react-dom": "^19.2.0", + "react-router-dom": "^7.13.1" }, "devDependencies": { "@eslint/js": "^9.39.1", diff --git a/src/App.tsx b/src/App.tsx index 0a3deb1..38bc668 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,10 +1,34 @@ import './App.css' +import { Link, Route, Routes } from 'react-router-dom' function App() { + function HomeRoute() { + + return ( + <> +

Hello, OrgExplorer!

+ + ) + } + + + + function NotFoundRoute() { + return ( + <> +

404

+

Page not found.

+ Go home + + ) + } return ( <> -

Hello, OrgExplorer!

+ + } /> + } /> + ) } diff --git a/src/main.tsx b/src/main.tsx index bef5202..ade9d64 100644 --- a/src/main.tsx +++ b/src/main.tsx @@ -1,10 +1,13 @@ import { StrictMode } from 'react' import { createRoot } from 'react-dom/client' +import { BrowserRouter } from 'react-router-dom' import './index.css' import App from './App.tsx' createRoot(document.getElementById('root')!).render( - + + + , ) From fb995e5e1c4601f7e6a67d80826ccd8792795008 Mon Sep 17 00:00:00 2001 From: Kunal Bunkar Date: Thu, 12 Mar 2026 12:37:06 +0530 Subject: [PATCH 2/2] make 404 page in seprate file --- src/App.tsx | 33 +++++++++++---------------------- src/NotFoundPage.tsx | 12 ++++++++++++ 2 files changed, 23 insertions(+), 22 deletions(-) create mode 100644 src/NotFoundPage.tsx diff --git a/src/App.tsx b/src/App.tsx index 38bc668..cab1a85 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,33 +1,22 @@ import './App.css' -import { Link, Route, Routes } from 'react-router-dom' - -function App() { - function HomeRoute() { - - return ( - <> -

Hello, OrgExplorer!

- - ) - } +import { Route, Routes } from 'react-router-dom' +import NotFoundPage from './NotFoundPage' +function HomeRoute() { + return ( + <> +

Hello, OrgExplorer!

+ + ) +} - function NotFoundRoute() { - return ( - <> -

404

-

Page not found.

- Go home - - ) - } - +function App() { return ( <> } /> - } /> + } /> ) diff --git a/src/NotFoundPage.tsx b/src/NotFoundPage.tsx new file mode 100644 index 0000000..3ff1199 --- /dev/null +++ b/src/NotFoundPage.tsx @@ -0,0 +1,12 @@ +import { Link } from 'react-router-dom' + +export default function NotFoundPage() { + return ( + <> +

404

+

Page not found.

+ Go home + + ) +} +