--- # Development role defaults # Node.js is installed by default from NodeSource # No additional configuration needed # Cursor IDE - lightweight IDE installation install_cursor: true install_cursor_extensions: false # Base Cursor extensions (always good to have) cursor_extensions_base: - usernamehw.errorlens # Better error highlighting - eamodio.gitlens # Git supercharged - mhutchie.git-graph # Git graph visualization - streetsidesoftware.code-spell-checker # Spell checker - EditorConfig.EditorConfig # EditorConfig support - PKief.material-icon-theme # Better file icons # Python/Data Science extensions cursor_extensions_python: - ms-python.python # Python language support - ms-python.vscode-pylance # Python IntelliSense - ms-python.black-formatter # Black formatter - ms-python.isort # Import sorter - ms-python.flake8 # Linter - charliermarsh.ruff # Fast Python linter # Jupyter/Data Science extensions cursor_extensions_jupyter: - ms-toolsai.jupyter # Jupyter notebooks - ms-toolsai.jupyter-keymap # Jupyter keybindings - ms-toolsai.jupyter-renderers # Jupyter renderers # Web Development extensions cursor_extensions_web: - esbenp.prettier-vscode # Code formatter - dbaeumer.vscode-eslint # ESLint - bradlc.vscode-tailwindcss # Tailwind CSS - vue.volar # Vue 3 - svelte.svelte-vscode # Svelte # Testing extensions cursor_extensions_testing: - ms-playwright.playwright # Playwright testing # Systems/DevOps extensions cursor_extensions_devops: - golang.go # Go language - rust-lang.rust-analyzer # Rust language - redhat.vscode-yaml # YAML support - ms-azuretools.vscode-docker # Docker support - redhat.ansible # Ansible support # R language extensions cursor_extensions_r: - REditorSupport.r # R language support - Ikuyadeu.r-pack # R package development # Markdown/Documentation extensions cursor_extensions_docs: - yzhang.markdown-all-in-one # Markdown tools - DavidAnson.vscode-markdownlint # Markdown linter # Default combined list (customize per host in host_vars) cursor_extensions: >- {{ [ cursor_extensions_base, (cursor_extensions_python if install_python | default(false) else []), (cursor_extensions_jupyter if install_jupyter | default(false) else []), (cursor_extensions_web if install_web | default(false) else []), (cursor_extensions_testing if install_playwright | default(false) else []), (cursor_extensions_devops if install_devops | default(false) else []), (cursor_extensions_r if install_r | default(false) else []), (cursor_extensions_docs if install_docs | default(false) else []) ] | flatten }} # Feature flags to enable extension groups install_python: false install_jupyter: false install_web: false install_playwright: false install_devops: false install_r: false install_docs: false