calm-books-shine/apps/client/src/main.tsx

39 lines
1.0 KiB
TypeScript

import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import { createBrowserRouter, RouterProvider } from "react-router-dom";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import App from "./App";
import "./index.css";
import TRPCDemoPage from "./pages/TRPCDemoPage";
import NotFoundPage from "./pages/NotFoundPage";
import { trpc, trpcClient } from "./lib/trpc";
// Create a React Query client
const queryClient = new QueryClient({
defaultOptions: {
queries: {
staleTime: 5 * 1000, // 5 seconds
},
},
});
const router = createBrowserRouter([
{
path: "/",
element: <App />,
children: [{ index: true, element: <TRPCDemoPage /> }],
},
{ path: "*", element: <NotFoundPage /> },
]);
createRoot(document.getElementById("root")!).render(
<StrictMode>
<trpc.Provider client={trpcClient} queryClient={queryClient}>
<QueryClientProvider client={queryClient}>
<RouterProvider router={router} />
</QueryClientProvider>
</trpc.Provider>
</StrictMode>
);