natreex 71067c6fa8 Integrate local database management and IPC handlers into Electron
- Add comprehensive IPC handlers for database operations like books, chapters, characters, and conversations.
- Implement local database initialization and user data encryption.
- Update preload script paths for consistent environment handling.
- Modify `page.tsx` to initialize local database within Electron environment.
- Add new dependencies including `node-sqlite3-wasm` and `electron-rebuild`.
2025-11-17 07:46:20 -05:00

EritorsScribe - Electron + Next.js

Application Electron avec Next.js et TypeScript.

Structure du projet

eritorsscribe/
├── electron/          # Code Electron (main process)
│   ├── main.ts       # Point d'entrée principal
│   └── preload.ts    # Script preload (bridge sécurisé)
├── src/              # Mettez vos fichiers Next.js ici (app/, pages/, components/, etc.)
├── dist/             # Fichiers compilés Electron
├── out/              # Export statique Next.js
├── build/            # Configuration electron-builder
└── release/          # Binaires packagés

Installation

Les dépendances sont déjà installées. Si besoin:

npm install

Développement

  1. Mettez vos fichiers Next.js dans le dossier src/ (créez src/app/ ou src/pages/ selon votre structure Next.js)

  2. Lancez le mode développement:

npm run dev

Cela va:

  • Démarrer Next.js sur http://localhost:3000
  • Lancer Electron qui charge cette URL
  • Recharger automatiquement au changement

Scripts disponibles

  • npm run dev - Développement (Next.js + Electron)
  • npm run dev:next - Next.js uniquement
  • npm run dev:electron - Electron uniquement
  • npm run build - Build complet (Next.js + Electron)
  • npm run start - Lancer l'app compilée
  • npm run package:mac - Packager pour macOS
  • npm run package:win - Packager pour Windows
  • npm run package:linux - Packager pour Linux
  • npm run package - Packager pour toutes les plateformes

Build de production

  1. Compilez tout:
npm run build
  1. Packagez pour votre plateforme:
# macOS
npm run package:mac

# Windows
npm run package:win

# Linux
npm run package:linux

# Toutes les plateformes
npm run package

Les binaires seront dans le dossier release/.

Versions installées

  • Electron: 39.x (dernière version stable)
  • Next.js: 16.x
  • React: 19.x
  • TypeScript: 5.9.x
  • electron-builder: 26.x

Configuration Next.js

Le fichier next.config.ts est configuré avec:

  • output: 'export' - Export statique pour Electron
  • images.unoptimized: true - Images non optimisées
  • trailingSlash: true - Compatibilité Electron

Sécurité

Le preload script utilise:

  • contextIsolation: true
  • nodeIntegration: false
  • sandbox: true

Pour exposer des APIs au renderer, modifiez electron/preload.ts.

Multi-plateforme

  • macOS: Build sur Mac (requis pour signing)
  • Windows: Build sur n'importe quelle plateforme
  • Linux: Build sur n'importe quelle plateforme

Prochaines étapes

  1. Créez votre structure Next.js dans src/
  2. Ajoutez vos pages dans src/app/ ou src/pages/
  3. Testez avec npm run dev
  4. Personnalisez electron/main.ts selon vos besoins
  5. Ajoutez des APIs dans electron/preload.ts si nécessaire
Description
Application desktop ERitors propulsé par Electron
Readme 1.4 MiB
Languages
TypeScript 99.1%
CSS 0.7%
JavaScript 0.2%