{
  "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",
    // <style>
    "workbench.iconTheme": "material-icon-theme",
    "workbench.colorTheme": "Community Material Theme Palenight High Contrast",
    "editor.fontFamily": "'Fira Code'",
    "editor.fontLigatures": true
    // </style>
  },
  "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"
}
