/ .devcontainer / devcontainer.json
devcontainer.json
 1  {
 2      "name": "Khoj Development Environment",
 3      "build": {
 4          "dockerfile": "Dockerfile",
 5          "context": "..", // Build context is the project root
 6          "args": {
 7              "PYTHON_VERSION": "3.12"
 8          }
 9      },
10      "forwardPorts": [
11          42110
12      ],
13      "containerEnv": {
14          "USE_EMBEDDED_DB": "True"
15      },
16      "customizations": {
17          "vscode": {
18              "extensions": [
19                  "ms-python.python",
20                  "ms-python.vscode-pylance",
21                  "ms-python.black-formatter",
22                  "ms-python.mypy-type-checker",
23                  "ms-python.isort",
24                  "esbenp.prettier-vscode",
25                  "GitHub.copilot",
26                  "GitHub.copilot-chat",
27                  "GitHub.vscode-pull-request-github",
28                  "github.vscode-github-actions",
29                  "unifiedjs.vscode-mdx"
30              ],
31              "settings": {
32                  "python.defaultInterpreterPath": "/opt/venv/bin/python",
33                  "python.formatting.provider": "black",
34                  "python.linting.enabled": true,
35                  "python.linting.mypyEnabled": true,
36                  "python.linting.mypyArgs": [
37                      "--config-file=pyproject.toml"
38                  ],
39                  "mypy.configFile": "pyproject.toml",
40                  "isort.args": [
41                      "--profile",
42                      "black",
43                      "--filter-files"
44                  ],
45                  "python.testing.pytestArgs": [
46                      "tests"
47                  ],
48                  "python.testing.unittestEnabled": false,
49                  "python.testing.pytestEnabled": true,
50              }
51          }
52      },
53      "postCreateCommand": "scripts/dev_setup.sh --devcontainer",
54      "features": {
55          "ghcr.io/devcontainers/features/github-cli:1": {},
56      },
57      "remoteUser": "vscode"
58  }