NeahNew/ELECTRON.md
2025-05-06 22:43:27 +02:00

1.7 KiB

Neah Desktop Application

This is the desktop version of Neah, built with Electron and Next.js.

Development

To run the application in development mode:

npm run electron:dev

This will start the Next.js development server and launch the Electron application that connects to it.

Building

To build installers for your current platform:

npm run electron:build

This will create installers in the dist directory. The build script handles:

  • Building the Next.js application in static export mode
  • Code signing (placeholder for macOS)
  • Building installers for your current platform

Running from Production Build

If you have already built the Next.js app and want to run the Electron app without building installers:

npm run electron:start

Platform-specific Notes

macOS

  • The app is configured with a placeholder code signing certificate
  • For distribution, you will need to replace this with a real certificate from Apple

Windows

  • Windows builds are configured to use NSIS for creating installers

Linux

  • Linux builds create AppImage and Debian packages

Configuration

The Electron configuration is in:

  • electron/main.js - The main Electron process
  • electron/preload.js - Preload script exposing APIs to the renderer
  • package.json - Build configuration in the build section

The window controls integration is in:

  • components/electron/WindowControls.tsx

Known Issues

  • API routes: Since this is a static export, any server-side API routes will not work in the Electron app. You'll need to modify API calls to use external services or implement them in Electron.
  • Authentication: If using server-side authentication, you may need to implement a custom flow for Electron.