// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.245.2/containers/typescript-node
{
  "name": "Node.js & TypeScript",
  "build": {
    "dockerfile": "Dockerfile",
    // Update 'VARIANT' to pick a Node version: 18, 16, 14.
    // Append -bullseye or -buster to pin to an OS version.
    // Use -bullseye variants on local on arm64/Apple Silicon.
    "args": {
      "VARIANT": "16-bullseye"
    }
  },
  // Configure tool-specific properties.
  "customizations": {
    // Configure properties specific to VS Code.
    "vscode": {
      // Add the IDs of extensions you want installed when the container is created.
      "extensions": [
        "dbaeumer.vscode-eslint",
        "formulahendry.auto-rename-tag",
        "aaron-bond.better-comments",
        "bierner.color-info",
        "ldez.ignore-files",
        "gooooloo.smartquote",
        "wmaurer.change-case",
        "streetsidesoftware.code-spell-checker",
        "naumovs.color-highlight",
        "EditorConfig.EditorConfig",
        "mhutchie.git-graph",
        "donjayamanne.githistory",
        "ecmel.vscode-html-css",
        "yzhang.markdown-all-in-one",
        "christian-kohler.path-intellisense",
        "esbenp.prettier-vscode",
        "shardulm94.trailing-spaces",
        "lihui.vs-color-picker",
        "bradlc.vscode-tailwindcss"
      ]
    }
  },
  // Use 'forwardPorts' to make a list of ports inside the container available locally.
  "forwardPorts": [3000],
  // Use 'postCreateCommand' to run commands after the container is created.
  // "postCreateCommand": "yarn install",
  // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
  "remoteUser": "node",
  "features": {
    "git": "os-provided",
    "git-lfs": "latest",
    "ghcr.io/devcontainers/features/docker-in-docker:2": {}
  },
  "mounts": [],
  "postStartCommand": "pnpm install && npm run dev"
}
