# 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: ```bash 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: ```bash 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: ```bash npm run build ``` 2. Packagez pour votre plateforme: ```bash # 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