Tabii, doğrudan exe dosyası oluşturmak için şu adımları izleyebilirsiniz:
Önce tüm bağımlılıkları yükleyin:
npm install --legacy-peer-depsNext.js uygulamasını derleyin:
npm run buildBu komut, Next.js uygulamasını statik HTML, CSS ve JavaScript dosyalarına derleyecek ve out klasörüne yerleştirecektir.
Electron uygulamasını paketleyin ve exe oluşturun:
npm run distBu komut, electron-builder'ı kullanarak uygulamayı paketleyecek ve dist klasöründe Windows için kurulum dosyası (.exe) oluşturacaktır.
dist klasöründe FiAi-Setup-1.0.0.exe (veya benzer bir isimle) kurulum dosyası bulacaksınız. Bu dosyayı çalıştırarak uygulamayı bilgisayarınıza kurabilirsiniz.Derleme Hatası: Eğer derleme sırasında hata alırsanız, şu komutu deneyin:
npm run build && npm run dist -- --win --x64public klasöründe icon.ico, icon.png gibi dosyaların olduğundan emin olun.Bağımlılık Hataları: Bazı bağımlılıklar eksikse, şu komutu deneyin:
npm install --save-dev electron-builder@latest --legacy-peer-depsDerleme işlemi tamamlandıktan sonra, uygulamanızı doğrudan çalıştırabilir veya başkalarıyla paylaşabilirsiniz. Kurulum dosyası, uygulamanızı bilgisayarınıza kuracak ve masaüstünde bir kısayol oluşturacaktır.
C:\Users\cold1\OneDrive\Masaüstü\FiAiPro>npm run build && npm run dist -- --win --x64
my-v0-project@0.1.0 build
next build
▲ Next.js 15.2.4
Creating an optimized production build ...
✓ Compiled successfully in 10.0s
Skipping validation of types
Skipping linting
✓ Collecting page data
✓ Generating static pages (4/4)
✓ Collecting build traces
✓ Exporting (3/3)
✓ Finalizing page optimization
Route (app) Size First Load JS
┌ ○ / 23 kB 123 kB
└ ○ /_not-found 977 B 101 kB
First Load JS shared by all 100 kB
├ chunks/4bd1b696-65e99c1e88eaaa07.js 53.2 kB
├ chunks/684-a43218971b7055ae.js 45.3 kB
└ other shared chunks (total) 1.9 kB
○ (Static) prerendered as static content
npm error Missing script: "dist"
npm error
npm error To see a list of scripts, run:
npm error npm run
npm error A complete log of this run can be found in: C:\Users\cold1\AppData\Local\npm-cache_logs\2025-04-15T11_07_45_023Z-debug-0.log
Görünüşe göre package.json dosyanızda "dist" komutu tanımlanmamış. Bu sorunu çözmek için package.json dosyanızı düzenlemeniz gerekiyor.
package.json dosyanızı açın ve "scripts" bölümüne "dist" komutunu ekleyin:
{
"name": "fiai",
"version": "1.0.0",
"description": "FiBilisim AI destekli kod editörü",
"main": "electron/main.js",
"scripts": {
"dev": "concurrently \"npm run dev:next\" \"npm run dev:electron\"",
"dev:next": "next dev",
"dev:electron": "electron .",
"build": "next build",
"start": "electron .",
"dist": "electron-builder"
},
"build": {
"appId": "com.fibilisim.fiai",
"productName": "FiAi",
"files": ["electron/**/*", "out/**/*", "package.json"],
"directories": {
"output": "dist"
},
"win": {
"target": [
{
"target": "nsis",
"arch": ["x64"]
}
],
"icon": "public/icon.ico"
},
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true,
"createDesktopShortcut": true,
"createStartMenuShortcut": true,
"shortcutName": "FiAi",
"installerIcon": "public/icon.ico",
"uninstallerIcon": "public/icon.ico",
"installerHeaderIcon": "public/icon.ico"
}
},
"dependencies": {
"@radix-ui/react-slot": "^1.0.2",
"@radix-ui/react-tabs": "^1.0.4",
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.0",
"electron-is-dev": "^2.0.0",
"lucide-react": "^0.323.0",
"next": "14.1.0",
"react": "^18.2.0",
"react-day-picker": "^8.10.1",
"react-dom": "^18.2.0",
"tailwind-merge": "^2.2.1",
"tailwindcss-animate": "^1.0.7"
},
"devDependencies": {
"@types/node": "^20.11.16",
"@types/react": "^18.2.52",
"@types/react-dom": "^18.2.18",
"autoprefixer": "^10.4.17",
"concurrently": "^8.2.2",
"electron": "^28.2.0",
"electron-builder": "^24.9.1",
"postcss": "^8.4.33",
"tailwindcss": "^3.4.1",
"typescript": "^5.3.3"
}
}Bu değişikliği yaptıktan sonra, şu komutları çalıştırın:
npm run build
npm run distEğer hala sorun yaşıyorsanız, electron-builder'ı yeniden yüklemeyi deneyin:
npm install --save-dev electron-builder@latest --legacy-peer-depsArdından tekrar derleme işlemini başlatın:
npm run build
npm run distBu işlem tamamlandığında, dist klasöründe kurulum dosyanızı bulabilirsiniz.
Eğer package.json düzenlemesi işe yaramazsa, doğrudan electron-builder'ı çalıştırabilirsiniz:
npx electron-builder --win --x64Bu komut, electron-builder'ı doğrudan çalıştırarak Windows için 64-bit kurulum dosyası oluşturacaktır.
daha once paket.json bole yapmıssın
{
"name": "my-v0-project",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"@hookform/resolvers": "^3.9.1",
"@radix-ui/react-accordion": "^1.2.2",
"@radix-ui/react-alert-dialog": "^1.1.4",
"@radix-ui/react-aspect-ratio": "^1.1.1",
"@radix-ui/react-avatar": "^1.1.2",
"@radix-ui/react-checkbox": "^1.1.3",
"@radix-ui/react-collapsible": "^1.1.2",
"@radix-ui/react-context-menu": "^2.2.4",
"@radix-ui/react-dialog": "^1.1.4",
"@radix-ui/react-dropdown-menu": "^2.1.4",
"@radix-ui/react-hover-card": "^1.1.4",
"@radix-ui/react-label": "^2.1.1",
"@radix-ui/react-menubar": "^1.1.4",
"@radix-ui/react-navigation-menu": "^1.2.3",
"@radix-ui/react-popover": "^1.1.4",
"@radix-ui/react-progress": "^1.1.1",
"@radix-ui/react-radio-group": "^1.2.2",
"@radix-ui/react-scroll-area": "^1.2.2",
"@radix-ui/react-select": "^2.1.4",
"@radix-ui/react-separator": "^1.1.1",
"@radix-ui/react-slider": "^1.2.2",
"@radix-ui/react-slot": "latest",
"@radix-ui/react-switch": "^1.1.2",
"@radix-ui/react-tabs": "latest",
"@radix-ui/react-toast": "^1.2.4",
"@radix-ui/react-toggle": "^1.1.1",
"@radix-ui/react-toggle-group": "^1.1.1",
"@radix-ui/react-tooltip": "^1.1.6",
"autoprefixer": "^10.4.20",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"cmdk": "1.0.4",
"date-fns": "4.1.0",
"embla-carousel-react": "8.5.1",
"input-otp": "1.4.1",
"lucide-react": "^0.454.0",
"next": "15.2.4",
"next-themes": "latest",
"react": "^19",
"react-day-picker": "8.10.1",
"react-dom": "^19",
"react-hook-form": "^7.54.1",
"react-resizable-panels": "^2.1.7",
"recharts": "2.15.0",
"sonner": "^1.7.1",
"tailwind-merge": "^2.5.5",
"tailwindcss-animate": "^1.0.7",
"vaul": "^0.9.6",
"zod": "^3.24.1",
"electron": "latest",
"path": "latest",
"fs": "latest",
"child_process": "latest"
},
"devDependencies": {
"@types/node": "^22",
"@types/react": "^19",
"@types/react-dom": "^19",
"postcss": "^8",
"tailwindcss": "^3.4.17",
"typescript": "^5"
}
}
You can send messages while the preview loads