Add full REST API for all deployment operations (projects, servers, docker)

Port all IPC handlers to HTTP endpoints so the UI and LLM use the same
API. Adds routes/projects.js (scan, compare, init), routes/servers.js
(CRUD, containers, logs), routes/docker.js (build, deploy, pull, vscode-diff).
Enhanced ssh.js with full SSHService class (SFTP upload/download).
Updated renderer api.js to use fetch instead of window.api IPC.
Added concurrently for npm run dev (API + Vite + Electron).
OpenAPI spec now covers all 24 endpoints.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-27 11:17:40 -06:00
parent 93d40455d9
commit feec35ffce
9 changed files with 1329 additions and 153 deletions

View File

@@ -5,9 +5,13 @@
"main": "cli/index.js",
"type": "module",
"scripts": {
"docker-deploy": "node cli/index.js",
"dev": "concurrently -n api,vite,electron -c blue,green,magenta \"npm run api:dev\" \"npm run vite:dev\" \"npm run electron:dev\"",
"dev:no-electron": "concurrently -n api,vite -c blue,green \"npm run api:dev\" \"npm run vite:dev\"",
"api": "node api/server.js",
"api:dev": "node --watch api/server.js",
"vite:dev": "cd app/renderer && npx vite",
"electron:dev": "npx wait-on http://localhost:5173 && electron app/main/index.js --dev",
"docker-deploy": "node cli/index.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
@@ -23,6 +27,7 @@
"@scalar/express-api-reference": "^0.8.46",
"chalk": "^5.3.0",
"commander": "^12.1.0",
"concurrently": "^9.2.1",
"cors": "^2.8.6",
"express": "^5.2.1",
"glob": "^11.0.0",