import { Toaster } from "@/components/ui/toaster"; import { Toaster as Sonner } from "@/components/ui/sonner"; import { TooltipProvider } from "@/components/ui/tooltip"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom"; import { HelmetProvider } from 'react-helmet-async'; import { Layout } from "./components/Layout"; import { PerformanceMonitor } from "./components/PerformanceMonitor"; import { CriticalCSS } from "./components/CriticalCSS"; import { ScrollToTop } from "./components/ScrollToTop"; import { lazy, Suspense } from "react"; // Lazy load components for better performance const Home = lazy(() => import("./pages/Home")); const Calculators = lazy(() => import("./pages/Calculators")); const Calculator = lazy(() => import("./pages/Calculator")); const History = lazy(() => import("./pages/History")); const Settings = lazy(() => import("./pages/Settings")); const PrivacyPolicy = lazy(() => import("./pages/PrivacyPolicy")); const TermsConditions = lazy(() => import("./pages/TermsConditions")); const AboutUs = lazy(() => import("./pages/AboutUs")); const ContactUs = lazy(() => import("./pages/ContactUs")); const NotFound = lazy(() => import("./pages/NotFound")); const Blog = lazy(() => import("./pages/Blog")); const HowToCalculateBMI = lazy(() => import("./pages/blog/HowToCalculateBMI")); const EMICalculatorGuide = lazy(() => import("./pages/blog/EMICalculatorGuide")); const CompoundInterestGuide = lazy(() => import("./pages/blog/CompoundInterestGuide")); const SIPvsLumpsumGuide = lazy(() => import("./pages/blog/SIPvsLumpsumGuide")); const TDEEWeightLossGuide = lazy(() => import("./pages/blog/TDEEWeightLossGuide")); const CarLoanTipsGuide = lazy(() => import("./pages/blog/CarLoanTipsGuide")); const PercentageCalculatorGuide = lazy(() => import("./pages/blog/PercentageCalculatorGuide")); const AgeCalculatorGuide = lazy(() => import("./pages/blog/AgeCalculatorGuide")); const SavingsInterestGuide = lazy(() => import("./pages/blog/SavingsInterestGuide")); const LoanEMIGuide = lazy(() => import("./pages/blog/LoanEMIGuide")); const MortgageCalculatorGuide = lazy(() => import("./pages/blog/MortgageCalculatorGuide")); const GSTCalculatorGuide = lazy(() => import("./pages/blog/GSTCalculatorGuide")); const CalorieCalculatorGuide = lazy(() => import("./pages/blog/CalorieCalculatorGuide")); const RetirementPlanningGuide = lazy(() => import("./pages/blog/RetirementPlanningGuide")); const TipCalculatorGuide = lazy(() => import("./pages/blog/TipCalculatorGuide")); const InvestmentCalculatorGuide = lazy(() => import("./pages/blog/InvestmentCalculatorGuide")); const DiscountCalculatorGuide = lazy(() => import("./pages/blog/DiscountCalculatorGuide")); const UnitConverterGuide = lazy(() => import("./pages/blog/UnitConverterGuide")); const IdealWeightGuide = lazy(() => import("./pages/blog/IdealWeightGuide")); const DateCalculatorGuide = lazy(() => import("./pages/blog/DateCalculatorGuide")); const BodyFatCalculatorGuide = lazy(() => import("./pages/blog/BodyFatCalculatorGuide")); const LoanInterestGuide = lazy(() => import("./pages/blog/LoanInterestGuide")); const PPFCalculatorGuide = lazy(() => import("./pages/blog/PPFCalculatorGuide")); const FuelCostGuide = lazy(() => import("./pages/blog/FuelCostGuide")); const GradeCalculatorGuide = lazy(() => import("./pages/blog/GradeCalculatorGuide")); const SleepCalculatorGuide = lazy(() => import("./pages/blog/SleepCalculatorGuide")); const RunningPaceGuide = lazy(() => import("./pages/blog/RunningPaceGuide")); const CryptoInvestmentGuide = lazy(() => import("./pages/blog/CryptoInvestmentGuide")); const WeddingBudgetGuide = lazy(() => import("./pages/blog/WeddingBudgetGuide")); const PregnancyCalculatorGuide = lazy(() => import("./pages/blog/PregnancyCalculatorGuide")); const HeartRateZoneGuide = lazy(() => import("./pages/blog/HeartRateZoneGuide")); const MortgageRefinanceGuide = lazy(() => import("./pages/blog/MortgageRefinanceGuide")); const StockProfitGuide = lazy(() => import("./pages/blog/StockProfitGuide")); const WaterIntakeGuide = lazy(() => import("./pages/blog/WaterIntakeGuide")); const MacronutrientGuide = lazy(() => import("./pages/blog/MacronutrientGuide")); const VO2MaxGuide = lazy(() => import("./pages/blog/VO2MaxGuide")); const DebtPayoffGuide = lazy(() => import("./pages/blog/DebtPayoffGuide")); const BudgetPlanningGuide = lazy(() => import("./pages/blog/BudgetPlanningGuide")); const HomeRenovationGuide = lazy(() => import("./pages/blog/HomeRenovationGuide")); const CreditScoreGuide = lazy(() => import("./pages/blog/CreditScoreGuide")); const MortgageAffordabilityGuide = lazy(() => import("./pages/blog/MortgageAffordabilityGuide")); const TaxSavingsGuide = lazy(() => import("./pages/blog/TaxSavingsGuide")); const ProteinIntakeGuide = lazy(() => import("./pages/blog/ProteinIntakeGuide")); const BodyWaterGuide = lazy(() => import("./pages/blog/BodyWaterGuide")); const queryClient = new QueryClient(); // Loading component const PageLoader = () => (
); const App = () => ( }> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> }> } /> {/* ADD ALL CUSTOM ROUTES ABOVE THE CATCH-ALL "*" ROUTE */} } /> ); export default App;