diff --git a/CLAUDE.md b/CLAUDE.md index fd7054e..87cb544 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -10,8 +10,6 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co npm run dev # Start development server with hot reload npm run build # Full build with type checking npm run build:win # Build Windows executable -npm run build:mac # Build macOS DMG -npm run build:linux # Build Linux AppImage ``` ### Code Quality diff --git a/electron-builder.yml b/electron-builder.yml index 98bc229..fc5ef83 100644 --- a/electron-builder.yml +++ b/electron-builder.yml @@ -27,7 +27,7 @@ win: - nsis - portable portable: - artifactName: ${name}-${version}-portable.${ext} + artifactName: ${name}-portable.${ext} # Portable app uses user data directory (AppData), not exe directory # This ensures config persists across app updates nsis: diff --git a/electron.vite.config.ts b/electron.vite.config.ts index 80304cd..b3dfb1e 100644 --- a/electron.vite.config.ts +++ b/electron.vite.config.ts @@ -2,11 +2,29 @@ import { resolve } from 'path' import { defineConfig } from 'electron-vite' import react from '@vitejs/plugin-react' import tailwindcss from '@tailwindcss/vite' +import { execSync } from 'child_process' + +// Get git hash (first 7 characters) +const getGitHash = (): string => { + try { + return execSync('git rev-parse --short=7 HEAD', { encoding: 'utf-8' }).trim() + } catch { + return 'unknown' + } +} + +// Get version from package.json +const version = require('./package.json').version +const gitHash = getGitHash() export default defineConfig({ main: {}, preload: {}, renderer: { + define: { + __APP_VERSION__: JSON.stringify(version), + __GIT_HASH__: JSON.stringify(gitHash) + }, resolve: { alias: { '@renderer': resolve('src/renderer/src') diff --git a/src/renderer/src/App.tsx b/src/renderer/src/App.tsx index b2beaf1..63bbeb6 100644 --- a/src/renderer/src/App.tsx +++ b/src/renderer/src/App.tsx @@ -332,12 +332,17 @@ function App(): React.JSX.Element {