{ "name": "OSU Lazer API", "dockerComposeFile": "docker-compose.yml", "service": "devcontainer", "shutdownAction": "stopCompose", "workspaceFolder": "/workspaces/osu_lazer_api", "containerEnv": { "MYSQL_DATABASE": "osu_api", "MYSQL_USER": "osu_user", "MYSQL_PASSWORD": "osu_password", "MYSQL_HOST": "mysql", "MYSQL_PORT": "3306" }, "customizations": { "vscode": { "extensions": [ "ms-python.python", "detachhead.basedpyright", "charliermarsh.ruff", "ms-python.debugpy", "ms-vscode.vscode-json", "redhat.vscode-yaml", "ms-vscode.docker", "rust-lang.rust-analyzer" ], "settings": { "python.defaultInterpreterPath": "/usr/local/bin/python", "python.terminal.activateEnvironment": true, "python.linting.enabled": true, "python.linting.pylintEnabled": false, "python.linting.flake8Enabled": false, "python.formatting.provider": "none", "[python]": { "editor.defaultFormatter": "charliermarsh.ruff", "editor.formatOnSave": true, "editor.codeActionsOnSave": { "source.organizeImports": "explicit" } }, "ruff.enable": true, "ruff.lint.enable": true, "ruff.format.enable": true, "ruff.importStrategy": "fromEnvironment", "files.exclude": { "**/__pycache__": true, "**/*.pyc": true }, "python.testing.pytestEnabled": true, "python.testing.unittestEnabled": false, "python.testing.pytestArgs": [ "." ], "terminal.integrated.defaultProfile.linux": "bash", "rust-analyzer.server.path": "rust-analyzer", "rust-analyzer.cargo.buildScripts.enable": true, "rust-analyzer.procMacro.enable": true, "[rust]": { "editor.defaultFormatter": "rust-lang.rust-analyzer", "editor.formatOnSave": true } } } }, "features": { "ghcr.io/va-h/devcontainers-features/uv:1": {}, "ghcr.io/devcontainers/features/rust:1": { "version": "latest", "profile": "default" } }, "forwardPorts": [ 8000, 3306, 6379 ], "postCreateCommand": "uv sync --dev && uv pip install rosu-pp-py && uv run alembic upgrade head && uv run pre-commit install && cd packages/msgpack_lazer_api && cargo check", "remoteUser": "vscode" }