From d51169f6411b68a226d76d2d39826904de484929 Mon Sep 17 00:00:00 2001
From: Ariel Costas Guerrero <ariel@costas.dev>
Date: Wed, 19 Nov 2025 15:04:55 +0100
Subject: feat: Add About and Favourites pages, update routing and context
 management

- Added new routes for About and Favourites pages.
- Implemented About page with version information and credits.
- Created Favourites page with a placeholder message for empty favourites.
- Refactored RegionConfig import paths for consistency.
- Introduced PageTitleContext to manage page titles dynamically.
- Updated various components to utilize the new context for setting page titles.
- Enhanced AppShell layout with a responsive Drawer for navigation.
- Added CSS styles for new components and pages.
- Integrated commit hash display in the About page for version tracking.
---
 src/frontend/app/root.tsx | 25 +++++++++----------------
 1 file changed, 9 insertions(+), 16 deletions(-)

(limited to 'src/frontend/app/root.tsx')

diff --git a/src/frontend/app/root.tsx b/src/frontend/app/root.tsx
index 5891097..8f0c916 100644
--- a/src/frontend/app/root.tsx
+++ b/src/frontend/app/root.tsx
@@ -1,22 +1,20 @@
 import {
-  isRouteErrorResponse,
-  Link,
-  Links,
-  Meta,
-  Outlet,
-  Scripts,
-  ScrollRestoration,
+    isRouteErrorResponse,
+    Links,
+    Meta,
+    Scripts,
+    ScrollRestoration
 } from "react-router";
 
-import type { Route } from "./+types/root";
 import "@fontsource-variable/roboto";
+import type { Route } from "./+types/root";
 import "./root.css";
 
 //#region Maplibre setup
+import maplibregl from "maplibre-gl";
 import "maplibre-theme/icons.default.css";
 import "maplibre-theme/modern.css";
 import { Protocol } from "pmtiles";
-import maplibregl from "maplibre-gl";
 import { AppProvider } from "./AppContext";
 const pmtiles = new Protocol();
 maplibregl.addProtocol("pmtiles", pmtiles.tile);
@@ -87,7 +85,7 @@ export function Layout({ children }: { children: React.ReactNode }) {
   );
 }
 
-import NavBar from "./components/NavBar";
+import { AppShell } from "./components/layout/AppShell";
 
 export default function App() {
   if ("serviceWorker" in navigator) {
@@ -98,12 +96,7 @@ export default function App() {
 
   return (
     <AppProvider>
-      <main className="main-content">
-        <Outlet />
-      </main>
-      <footer>
-        <NavBar />
-      </footer>
+      <AppShell />
     </AppProvider>
   );
 }
-- 
cgit v1.3

