Skip to content

Commit c8ce648

Browse files
fix: resolve packaged app deployment error by including server folder and adding env checks
1 parent c812f15 commit c8ce648

2 files changed

Lines changed: 28 additions & 3 deletions

File tree

package.json

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "api-documenter",
3-
"version": "1.0.6",
3+
"version": "1.0.7",
44
"description": "Self-hosted Postman alternative with folder-level RBAC and offline-first documentation",
55
"main": "./out/main/index.js",
66
"author": "Praneeth Kulukuri",
@@ -66,6 +66,17 @@
6666
"provider": "github",
6767
"owner": "PraneethKulukuri26",
6868
"repo": "API-Documenter"
69-
}
69+
},
70+
"extraResources": [
71+
{
72+
"from": "server",
73+
"to": "server",
74+
"filter": [
75+
"**/*",
76+
"!node_modules",
77+
"!.vercel"
78+
]
79+
}
80+
]
7081
}
7182
}

src/main/index.ts

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -522,6 +522,14 @@ ipcMain.handle('deploy-to-vercel', async (_event, params: { databaseUrl: string,
522522
const projectRoot = app.isPackaged ? process.resourcesPath : app.getAppPath()
523523
const serverPath = join(projectRoot, 'server')
524524

525+
if (!fs.existsSync(serverPath)) {
526+
console.error('[Deploy] Server path not found:', serverPath)
527+
return {
528+
success: false,
529+
error: `Deployment folder not found. If you are using the packaged app, please ensure the 'server' folder exists in the resources directory.`
530+
}
531+
}
532+
525533
// Sanitize project name for Vercel (lowercase, alphanumeric and hyphens only)
526534
const sanitizedName = params.projectName
527535
.toLowerCase()
@@ -565,7 +573,13 @@ ipcMain.handle('deploy-to-vercel', async (_event, params: { databaseUrl: string,
565573
else resolve({ success: false, error: `Exited with code ${code}`, output: fullOutput })
566574
})
567575

568-
child.on('error', (err) => resolve({ success: false, error: err.message, output: fullOutput }))
576+
child.on('error', (err: any) => {
577+
let errorMessage = err.message
578+
if (err.code === 'ENOENT') {
579+
errorMessage = `Deployment failed: System command not found. Please ensure Node.js and NPX are installed on this computer.`
580+
}
581+
resolve({ success: false, error: errorMessage, output: fullOutput })
582+
})
569583
})
570584
}
571585

0 commit comments

Comments
 (0)