eggplants/subt

View on GitHub
.devcontainer/devcontainer.json

Summary

Maintainability
Test Coverage
{
  "name": "Python",
  "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
  "features": {
    "ghcr.io/devcontainers/features/python:1": {
      "version": "latest",
      "installTools": false,
      "installJupyterlab": false,
      "toolsToInstall": "black,mypy"
    },
    "ghcr.io/devcontainers/features/common-utils:2": {},
    "ghcr.io/devcontainers-contrib/features/poetry:2": {},
    "ghcr.io/devcontainers-contrib/features/shfmt:1": {},
    "ghcr.io/dhoeric/features/hadolint:1": {}
  },
  "postCreateCommand": "sh .devcontainer/postCreateCommand.sh",
  "remoteUser": "vscode",
  "containerUser": "vscode",
  "customizations": {
    "vscode": {
      "extensions": [
        "charliermarsh.ruff",
        "exiasr.hadolint",
        "foxundermoon.shell-format",
        "GitHub.copilot",
        "GitHub.vscode-github-actions",
        "Gruntfuggly.todo-tree",
        "ms-azuretools.vscode-docker",
        "ms-python.black-formatter",
        "ms-python.mypy-type-checker",
        "njpwerner.autodocstring",
        "oderwat.indent-rainbow",
        "tamasfe.even-better-toml",
        "tekumara.typos-vscode",
        "timonwong.shellcheck",
        "-ms-python.vscode-pylance"
      ],
      "settings": {
        "dev.containers.experimentalLockfile": true,
        "terminal.integrated.defaultProfile.linux": "zsh",
        "python.defaultInterpreterPath": "./.venv/bin/python",
        "[python]": {
          "editor.formatOnSave": true,
          "editor.codeActionsOnSave": {
            "source.fixAll": "explicit",
            "source.organizeImports": "explicit"
          },
          "editor.defaultFormatter": "ms-python.black-formatter"
        }
      }
    }
  }
}