* Introduced BevyScene React component in landing-component for rendering a 3D cockpit visualization.

* Included WebAssembly asset `yachtpit.js` for cockpit functionality.
* Added Bevy MIT license file.
* Implemented a service worker to cache assets locally instead of fetching them remotely.
* Added collapsible functionality to **Tweakbox** and included the `@chakra-ui/icons` dependency.
* Applied the `hidden` prop to the Tweakbox Heading for better accessibility.
* Refactored **Particles** component for improved performance, clarity, and maintainability.

  * Introduced helper functions for particle creation and count management.
  * Added responsive resizing with particle repositioning.
  * Optimized animation updates, including velocity adjustments for speed changes.
  * Ensured canvas size and particle state are cleanly managed on component unmount.
This commit is contained in:
geoffsee
2025-06-28 16:55:14 -04:00
parent 57ad9df087
commit c3ea9ba599
21 changed files with 798 additions and 38 deletions

View File

@@ -17,6 +17,10 @@ const prebuildPlugin = () => ({
console.log('Generated robots.txt -> public/robots.txt');
child_process.execSync('bun run generate:fonts');
console.log('Copied fonts -> public/static/fonts');
child_process.execSync('bun run generate:bevy:bundle', {
stdio: 'inherit',
});
console.log('Bundled bevy app -> public/yachtpit.html');
}
},
});
@@ -31,6 +35,26 @@ export default defineConfig(({ command }) => {
prerender: true,
disableAutoFullBuild: false,
}),
VitePWA({
registerType: 'autoUpdate',
injectRegister: null,
minify: true,
disable: false,
filename: 'service-worker.js',
devOptions: {
enabled: false,
},
manifest: {
name: 'open-gsio',
short_name: 'open-gsio',
description: 'Assistant',
},
workbox: {
globPatterns: ['**/*.{js,css,html,ico,png,svg,wasm}'],
navigateFallbackDenylist: [/^\/api\//],
maximumFileSizeToCacheInBytes: 25000000,
},
}),
// PWA plugin saves money on data transfer by caching assets on the client
/*
For safari, use this script in the console to unregister the service worker.
@@ -41,21 +65,6 @@ export default defineConfig(({ command }) => {
})
})
*/
// VitePWA({
// registerType: 'autoUpdate',
// devOptions: {
// enabled: false,
// },
// manifest: {
// name: "open-gsio",
// short_name: "open-gsio",
// description: "Assistant"
// },
// workbox: {
// globPatterns: ['**/*.{js,css,html,ico,png,svg}'],
// navigateFallbackDenylist: [/^\/api\//],
// }
// })
],
server: {
port: 3000,