Launch.json code: Difference between revisions

From Seedbury Square
mNo edit summary
No edit summary
 
Line 1: Line 1:
<pre>
<pre>
{
{
  "version": "0.2.0",
"version": "0.2.0",
  "configurations": [
"configurations": [
      /* --- Server (Node.js) --- */
{
      {
"name": "Tools: BrowserSync",
          "name": "Server: Node (inspect)",
"type": "pwa-node",
          "type": "pwa-node",
"request": "launch",
          "request": "launch",
"noDebug": true,
          "program": "${workspaceFolder}/api/src/webServer/webserver.js",
"runtimeExecutable": "npx",
          "cwd": "${workspaceFolder}/api/src/webServer",
"runtimeArgs": [
          "runtimeArgs": [
"browser-sync",
              "--inspect=9229"
"start",
          ],
"--config",
          "env": {
".vscode/bs-config.js"
              "NODE_ENV": "development"
],
          },
"cwd": "${workspaceFolder}",
          "skipFiles": [
"console": "integratedTerminal",
              "<node_internals>/**"
"internalConsoleOptions": "neverOpen"
          ],
},
          "console": "integratedTerminal",
{
          "restart": true, // auto-restart on crash
"name": "Server: Node (inspect)",
          "autoAttachChildProcesses": true
"type": "pwa-node",
          // If using TypeScript/transpiled output, add:
"request": "launch",
          // "outFiles": ["${workspaceFolder}/**/*.js", "!**/node_modules/**"]
"program": "${workspaceFolder}/api/src/webServer/webserver.js",
      },
"cwd": "${workspaceFolder}/api/src/webServer",
      /* --- Browser (Chrome) --- */
"runtimeArgs": [
      {
"--inspect=9229"
          "name": "Client: Chrome to http://localhost:1338",
],
          "type": "pwa-chrome",
"env": {
          "request": "launch",
"NODE_ENV": "development"
          "url": "http://localhost:1338",
},
          "webRoot": "${workspaceFolder}",
"console": "integratedTerminal",
          // If your app bundles sources (Vizte/Webpack), uncomment to improve breakpoint mapping:
"restart": true,
          // "sourceMapPathOverrides": {
"autoAttachChildProcesses": true,
          //  "webpack:///./*": "${webRoot}/*",
"skipFiles": [
          //  "webpack:///*":   "${webRoot}/*",
"<node_internals>/**"
          //  "vite:///src/*": "${webRoot}/src/*"
]
          // }
},
          "skipFiles": [
{
              "**/node_modules/**/*.js"
"name": "Server: Nodemon (inspect)",
          ]
"type": "pwa-node",
      },
"request": "launch",
      /* --- Optional: Node with nodemon (hot reload) --- */
"runtimeExecutable": "npx",
      {
"runtimeArgs": [
          "name": "Server: Node + nodemon (inspect)",
"nodemon",
          "type": "pwa-node",
"--inspect=9229",
          "request": "launch",
"--ignore",
          "runtimeExecutable": "npx",
"webServer/ui/**"
          "runtimeArgs": [
],
              "nodemon",
"args": [
              "--"
"webServer/webserver.js"
          ], // <-- 'nodemon' + '--' are the key
],
          "args": [
"cwd": "${workspaceFolder}/api/src",
              "--inspect=9229",
"env": {
              "--signal",
"NODE_ENV": "development"
              "SIGTERM",
},
              "${workspaceFolder}/api/src/webServer/webserver.js"
"console": "integratedTerminal",
          ],
"restart": true,
          "cwd": "${workspaceFolder}/api/src/webServer",
"autoAttachChildProcesses": true,
          "env": {
"skipFiles": [
              "NODE_ENV": "development"
"<node_internals>/**"
          },
]
          "restart": true,
},
          "console": "integratedTerminal",
{
          "autoAttachChildProcesses": true
"name": "Client: Chrome (direct 1338)",
      },
"type": "pwa-chrome",
      /* --- Optional: attach to an already-running Node --- */
"request": "launch",
      {
"url": "http://localhost:1338",
          "name": "Attach: Node on 9229",
"webRoot": "${workspaceFolder}/api/src/webServer/ui/src",
          "type": "pwa-node",
"skipFiles": [
          "request": "attach",
"**/node_modules/**/*.js"
          "port": 9229
]
      },
},
      {
{
          "name": "Client: Chrome via BrowserSync",
"name": "Client: Chrome (BrowserSync 3000)",
          "type": "pwa-chrome",
"type": "pwa-chrome",
          "request": "launch",
"request": "launch",
          "url": "http://localhost:3000",
"url": "http://localhost:3000",
          "webRoot": "${workspaceFolder}/api/src/webServer/ui",
"webRoot": "${workspaceFolder}/api/src/webServer/ui/src",
          "skipFiles": [
"skipFiles": [
              "**/node_modules/**/*.js"
"**/node_modules/**/*.js"
          ],
]
          "preLaunchTask": "browser-sync" // <- if compound preLaunchTask isn't honored, keep it here
},
      }
{
  ],
"name": "Attach: Node (9229)",
  "compounds": [
"type": "pwa-node",
      {
"request": "attach",
          "name": "Dev: Nodemon + BrowserSync + Chrome",
"port": 9229,
          "configurations": [
"skipFiles": [
              "Server: Node + nodemon (inspect)",
"<node_internals>/**"
              "Client: Chrome via BrowserSync"
]
          ],
}
          "preLaunchTask": "browser-sync",
],
          "stopAll": true
"compounds": [
      },
{
      {
"name": "Dev: Nodemon + BrowserSync + Chrome",
          "name": "Dev: Server + Browser",
"configurations": [
          "configurations": [
"Server: Nodemon (inspect)",
              "Server: Node (inspect)",
"Tools: BrowserSync",
              "Client: Chrome to http://localhost:1338"
"Client: Chrome (BrowserSync 3000)"
          ],
],
          "stopAll": true
"stopAll": true
      },
},
      {
{
          "name": "Dev: Nodemon + Browser",
"name": "Dev: Server + Chrome",
          "configurations": [
"configurations": [
              "Server: Node + nodemon (inspect)",
"Server: Node (inspect)",
              "Client: Chrome to http://localhost:1338"
"Client: Chrome (direct 1338)"
          ],
],
          "stopAll": true
"stopAll": true
      }
},
  ]
{
"name": "Dev: Nodemon + Chrome",
"configurations": [
"Server: Nodemon (inspect)",
"Client: Chrome (direct 1338)"
],
"stopAll": true
}
]
}
}
</pre>
</pre>

Latest revision as of 19:57, 27 January 2026

{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "Tools: BrowserSync",
			"type": "pwa-node",
			"request": "launch",
			"noDebug": true,
			"runtimeExecutable": "npx",
			"runtimeArgs": [
				"browser-sync",
				"start",
				"--config",
				".vscode/bs-config.js"
			],
			"cwd": "${workspaceFolder}",
			"console": "integratedTerminal",
			"internalConsoleOptions": "neverOpen"
		},
		{
			"name": "Server: Node (inspect)",
			"type": "pwa-node",
			"request": "launch",
			"program": "${workspaceFolder}/api/src/webServer/webserver.js",
			"cwd": "${workspaceFolder}/api/src/webServer",
			"runtimeArgs": [
				"--inspect=9229"
			],
			"env": {
				"NODE_ENV": "development"
			},
			"console": "integratedTerminal",
			"restart": true,
			"autoAttachChildProcesses": true,
			"skipFiles": [
				"<node_internals>/**"
			]
		},
		{
			"name": "Server: Nodemon (inspect)",
			"type": "pwa-node",
			"request": "launch",
			"runtimeExecutable": "npx",
			"runtimeArgs": [
				"nodemon",
				"--inspect=9229",
				"--ignore",
				"webServer/ui/**"
			],
			"args": [
				"webServer/webserver.js"
			],
			"cwd": "${workspaceFolder}/api/src",
			"env": {
				"NODE_ENV": "development"
			},
			"console": "integratedTerminal",
			"restart": true,
			"autoAttachChildProcesses": true,
			"skipFiles": [
				"<node_internals>/**"
			]
		},
		{
			"name": "Client: Chrome (direct 1338)",
			"type": "pwa-chrome",
			"request": "launch",
			"url": "http://localhost:1338",
			"webRoot": "${workspaceFolder}/api/src/webServer/ui/src",
			"skipFiles": [
				"**/node_modules/**/*.js"
			]
		},
		{
			"name": "Client: Chrome (BrowserSync 3000)",
			"type": "pwa-chrome",
			"request": "launch",
			"url": "http://localhost:3000",
			"webRoot": "${workspaceFolder}/api/src/webServer/ui/src",
			"skipFiles": [
				"**/node_modules/**/*.js"
			]
		},
		{
			"name": "Attach: Node (9229)",
			"type": "pwa-node",
			"request": "attach",
			"port": 9229,
			"skipFiles": [
				"<node_internals>/**"
			]
		}
	],
	"compounds": [
		{
			"name": "Dev: Nodemon + BrowserSync + Chrome",
			"configurations": [
				"Server: Nodemon (inspect)",
				"Tools: BrowserSync",
				"Client: Chrome (BrowserSync 3000)"
			],
			"stopAll": true
		},
		{
			"name": "Dev: Server + Chrome",
			"configurations": [
				"Server: Node (inspect)",
				"Client: Chrome (direct 1338)"
			],
			"stopAll": true
		},
		{
			"name": "Dev: Nodemon + Chrome",
			"configurations": [
				"Server: Nodemon (inspect)",
				"Client: Chrome (direct 1338)"
			],
			"stopAll": true
		}
	]
}