{ "name": "Node.js & TypeScript", "build": { "dockerfile": "Dockerfile", "args": { "VARIANT": "14" } }, "settings": { "terminal.integrated.shell.linux": "/bin/zsh", "files.exclude": { "**/node_modules": true, "**/yarn.lock": true, "**/dist": true, "**/lib": true, "**/.firebase": true }, "editor.tabSize": 2, "editor.detectIndentation": false, "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.codeActionsOnSave": { "source.fixAll.eslint": true }, "eslint.validate": ["json"], "markdown.extension.toc.levels": "2..4", // }, "extensions": [ "dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "yzhang.markdown-all-in-one", "hediet.vscode-drawio", "pkief.material-icon-theme", "equinusocio.vsc-community-material-theme" ], "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=cached", "workspaceFolder": "/workspace", "mounts": [ "source=decla-red-root-node_modules-volume4,target=/workspace/node_modules,type=volume", "source=decla-red-frontend-node_modules-volume4,target=/workspace/frontend/node_modules,type=volume", "source=decla-red-backend-node_modules-volume4,target=/workspace/backend/node_modules,type=volume", "source=decla-red-shared-node_modules-volume4,target=/workspace/shared/node_modules,type=volume" ], "forwardPorts": [3000, 8080], "postCreateCommand": "chown node:node ./**/node_modules && npm run build" }