Skip to content
Pinter Computing

Knowledge Base for IT Professionals, Teachers, and Astronauts

Pinter Computing

Knowledge Base for IT Professionals, Teachers, and Astronauts

  • Home
  • Programming
  • DevOps
  • Project Management
  • Software and Hardware
  • Miscellaneous
  • Egyebek
  • About
  • Experience
  • Education
  • Contact
  • Home
  • Programming
  • DevOps
  • Project Management
  • Software and Hardware
  • Miscellaneous
  • Egyebek
  • About
  • Experience
  • Education
  • Contact
Close

Search

Home/Knowledge Base/React web application first page load is very slow
Knowledge Base

React web application first page load is very slow

By Laszlo Pinter
December 19, 2025 1 Min Read
0

The React web application’s first page can load very slowly in development mode when SSR (Server Side Rendering) is enabled. There can be many causes, but there is one that can be eliminated easily. If the application uses Google’s Material UI library the loading of the more than 9000 icons can take a long time.

The main issue

The main issue was @mui/icons-material being imported in the NavigationMenu.tsx and Drawer.tsx components. This package contains thousands of icons (~9000 modules) and loads synchronously, causing Vite to do expensive on-demand optimization on first page load.

Changes Made

  1. NavigationMenu.tsx – Replaced @mui/icons-material imports with lucide-react:
    • ChevronRight → ChevronRight from lucide-react
    • ExpandMore → ChevronDown from lucide-react
    • Menu → Menu from lucide-react
  2. Drawer.tsx – Replaced Close icon from @mui/icons-material with X (aliased as Close) from lucide-react
  3. vite.config.ts – Optimized the configuration:
    • Removed workspace packages from optimizeDeps.include (they link directly to source)
    • Added more MUI submodules to pre-bundling (Collapse, Divider, Fade, Grow, List components, etc.)
    • Removed @mui/icons-material from SSR noExternal since it’s no longer used

Performance Impact

  • Before: Loading @mui/icons-material would trigger parsing/transforming thousands of modules
  • After: lucide-react is much smaller (~400 icons, tree-shakeable) and already pre-bundled

The first page load in dev mode should now be significantly faster.

Author

Laszlo Pinter

Follow Me
Other Articles
Previous

Disable the Caps Lock key in Windows 11

Next

Using React Router (Remix) with Material Tailwind components

No Comment! Be the first one.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Search

Last Changes

  • Install software development tools on Windows October 4, 2026
  • Install Chocolatey October 4, 2026
  • Install and configure Visual Studio Code October 4, 2026
  • Using Plan mode in GitHub Copilot September 9, 2026
  • AI - Artificial Intelligence September 9, 2026

Tags

.NET .NETcore 3Dprinting ASP.NET Core AutodeskInventor AWS C# Chef cloud DevOps Docker EntityFramework Git Go iOS iPad iPhone iPod Java Kubernetes Linux MacOSX MSSQL MVC MySql Node.js Packer PowerShell Python RDS RightScale Ruby security Splunk TeamCity Terraform TestKitchen Tomcat Ubuntu Vagrant VirtualBox VisualStudio Windows WordPress Xcode

Recent Comments

  • Laszlo Pinter on Turn off the built in touchpad when a mouse is attached
  • Kenneth Bush on Turn off the built in touchpad when a mouse is attached
  • Zengei László on MyHeritage családfa exportálása és küldése emailben
  • Raúl Castillo on DynDns update error
  • MICHAEL on Windows Media Player 12 cannot find the album information

–

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
Copyright 2026 — Pinter Computing. All rights reserved.