mkstack/src/App.tsx

53 lines
1.8 KiB
TypeScript
Raw Normal View History

// NOTE: This file should normally not be modified unless you are adding a new provider.
// To add new routes, edit the AppRouter.tsx file.
2025-06-01 16:26:09 -05:00
import { Suspense } from 'react';
import NostrProvider from '@/components/NostrProvider'
2025-05-30 22:37:13 +02:00
import { ThemeProvider } from "@/components/ThemeProvider";
2025-04-16 21:43:54 -05:00
import { Toaster } from "@/components/ui/toaster";
2025-06-01 16:26:09 -05:00
import { Spinner } from '@/components/ui/spinner';
2025-04-16 21:43:54 -05:00
import { Toaster as Sonner } from "@/components/ui/sonner";
import { TooltipProvider } from "@/components/ui/tooltip";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { NostrLoginProvider } from '@nostrify/react/login';
2025-04-17 16:53:23 -05:00
import AppRouter from './AppRouter';
// DO NOT MODIFY THIS RELAY LIST UNLESS EXPLICITLY REQUESTED
const defaultRelays = [
'wss://ditto.pub/relay',
// DO NOT ADD ANY RELAY WITHOUT FIRST USING A TOOL TO VERIFY IT IS ONLINE AND FUNCTIONAL
// IF YOU CANNOT VERIFY A RELAY IS ONLINE AND FUNCTIONAL, DO NOT ADD IT HERE
];
2025-04-16 21:43:54 -05:00
2025-04-18 12:05:24 -05:00
const queryClient = new QueryClient({
defaultOptions: {
queries: {
refetchOnWindowFocus: false,
staleTime: 60000, // 1 minute
gcTime: Infinity,
},
},
});
2025-04-16 21:43:54 -05:00
2025-04-17 16:53:23 -05:00
export function App() {
return (
2025-05-30 22:37:13 +02:00
<ThemeProvider defaultTheme="system">
<NostrLoginProvider storageKey='nostr:login'>
<NostrProvider relays={defaultRelays}>
<QueryClientProvider client={queryClient}>
<TooltipProvider>
<Toaster />
<Sonner />
2025-06-01 16:26:09 -05:00
<Suspense fallback={<div className="flex items-center justify-center h-screen"><Spinner /></div>}>
<AppRouter />
</Suspense>
2025-05-30 22:37:13 +02:00
</TooltipProvider>
</QueryClientProvider>
</NostrProvider>
</NostrLoginProvider>
</ThemeProvider>
2025-04-17 16:53:23 -05:00
);
}
2025-04-16 21:43:54 -05:00
export default App;