an appview-less Bluesky client using Constellation and PDS Queries
reddwarf.app
frontend
spa
bluesky
reddwarf
microcosm
1import { StrictMode } from "react";
2import ReactDOM from "react-dom/client";
3import { RouterProvider, createRouter } from "@tanstack/react-router";
4
5// Import the generated route tree
6import { routeTree } from "./routeTree.gen";
7
8import "~/styles/app.css";
9import reportWebVitals from "./reportWebVitals.ts";
10import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
11
12const queryClient = new QueryClient();
13// Create a new router instance
14const router = createRouter({
15 routeTree,
16 context: { queryClient },
17 defaultPreload: "intent",
18 scrollRestoration: true,
19 defaultStructuralSharing: true,
20 defaultPreloadStaleTime: 0,
21});
22
23// Register the router instance for type safety
24declare module "@tanstack/react-router" {
25 interface Register {
26 router: typeof router;
27 }
28}
29
30// Render the app
31const rootElement = document.getElementById("app");
32if (rootElement && !rootElement.innerHTML) {
33 const root = ReactDOM.createRoot(rootElement);
34 root.render(
35 // double queries annoys me
36 <StrictMode>
37 <QueryClientProvider client={queryClient}>
38 <RouterProvider router={router} />
39 </QueryClientProvider>
40 </StrictMode>
41 );
42}
43
44// If you want to start measuring performance in your app, pass a function
45// to log results (for example: reportWebVitals(console.log))
46// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
47reportWebVitals();