Apparently, there was an extra slash as suggest by Drew Reese in comments, also I need to move ThemeProvider out of scope of BrowserRouter, I think BrowserRouter need to reside just above the app like this -
import { createRoot } from "react-dom/client"
import "./index.css"
import App from "./App"
import { Toaster } from "sonner"
import { ThemeProvider } from "./components/theme-provider"
import { BrowserRouter } from "react-router-dom"
createRoot(document.getElementById("root")!).render(
<ThemeProvider attribute="class" defaultTheme="system" enableSystem>
<BrowserRouter basename="/unidash">
<App />
</BrowserRouter>
<Toaster richColors position="top-center" />
</ThemeProvider>
)