/ .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 }