diff --git a/android-chrome-192x192.png b/public/android-chrome-192x192.png similarity index 100% rename from android-chrome-192x192.png rename to public/android-chrome-192x192.png diff --git a/android-chrome-512x512.png b/public/android-chrome-512x512.png similarity index 100% rename from android-chrome-512x512.png rename to public/android-chrome-512x512.png diff --git a/apple-touch-icon.png b/public/apple-touch-icon.png similarity index 100% rename from apple-touch-icon.png rename to public/apple-touch-icon.png diff --git a/favicon-16x16.png b/public/favicon-16x16.png similarity index 100% rename from favicon-16x16.png rename to public/favicon-16x16.png diff --git a/favicon-32x32.png b/public/favicon-32x32.png similarity index 100% rename from favicon-32x32.png rename to public/favicon-32x32.png diff --git a/favicon.ico b/public/favicon.ico similarity index 100% rename from favicon.ico rename to public/favicon.ico diff --git a/logo.jpg b/public/logo.jpg similarity index 100% rename from logo.jpg rename to public/logo.jpg diff --git a/site.webmanifest b/public/site.webmanifest similarity index 62% rename from site.webmanifest rename to public/site.webmanifest index ed0beef..7ea409b 100644 --- a/site.webmanifest +++ b/public/site.webmanifest @@ -8,13 +8,8 @@ "theme_color": "#7A9E9F", "icons": [ { - "src": "/android-chrome-192x192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "/android-chrome-512x512.png", - "sizes": "512x512", + "src": "/favicon-32x32.png", + "sizes": "32x32", "type": "image/png" } ] diff --git a/style.css b/public/style.css similarity index 100% rename from style.css rename to public/style.css diff --git a/src/components/ErrorBoundary.jsx b/src/components/ErrorBoundary.jsx index 3c1b656..79f9215 100644 --- a/src/components/ErrorBoundary.jsx +++ b/src/components/ErrorBoundary.jsx @@ -11,18 +11,22 @@ class ErrorBoundary extends React.Component { } static getDerivedStateFromError(error) { - return { hasError: true }; + if (error && !error.message?.includes('Failed to load resource')) { + return { hasError: true }; + } + return null; } componentDidCatch(error, errorInfo) { - // Log error to console for debugging - console.error('ErrorBoundary caught an error:', error); - console.error('Error Info:', errorInfo); - - this.setState({ - error: error, - errorInfo: errorInfo - }); + if (error && !error.message?.includes('Failed to load resource')) { + console.error('ErrorBoundary caught an error:', error); + console.error('Error Info:', errorInfo); + + this.setState({ + error: error, + errorInfo: errorInfo + }); + } } render() { @@ -43,29 +47,6 @@ class ErrorBoundary extends React.Component {

Something went wrong

Please refresh the page or try again later.

- {process.env.NODE_ENV === 'development' && ( -
-
- - Error Details - -
-                    {this.state.error && this.state.error.toString()}
-                    {this.state.errorInfo && this.state.errorInfo.componentStack}
-                  
-
-
- )}
); diff --git a/vite.config.js b/vite.config.js index 6b09cb9..a0162c8 100644 --- a/vite.config.js +++ b/vite.config.js @@ -30,5 +30,7 @@ export default defineConfig({ }, optimizeDeps: { include: ['three', 'framer-motion', 'pts'] - } + }, + publicDir: 'public', + assetsInclude: ['**/*.png', '**/*.ico', '**/*.webmanifest'] }); \ No newline at end of file