WIP: Fix Electron build issues and migrate to @nostr/tools

- Fix TypeScript compilation errors in platform services
- Add missing rotateCamera method and isNativeApp property
- Fix index.html path resolution for packaged Electron apps
- Create separate Vite config for Electron renderer process
- Migrate from nostr-tools to @nostr/tools via JSR for ESM compatibility
- Update all Vite configs to handle mixed npm/JSR package management
- Add comprehensive documentation in BUILDING.md
- Fix preload script path resolution in packaged builds

Resolves build failures with deep imports and missing UI in AppImage.
This commit is contained in:
Matthew Raymer
2025-06-25 08:53:21 +00:00
parent 94ac7d648d
commit fe55d0b431
18 changed files with 305 additions and 167 deletions

View File

@@ -19,7 +19,7 @@ const initialIndexContent = `<!DOCTYPE html>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0,viewport-fit=cover">
<link rel="icon" href="/favicon.ico">
<link rel="icon" href="./favicon.ico">
<title>TimeSafari</title>
</head>
<body>
@@ -27,11 +27,7 @@ const initialIndexContent = `<!DOCTYPE html>
<strong>We're sorry but TimeSafari doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<script type="module">
// Force electron platform
window.process = { env: { VITE_PLATFORM: 'electron' } };
import('./src/main.electron.ts');
</script>
<script type="module" src="./main.electron.js"></script>
</body>
</html>`;