Skip to content

Instantly share code, notes, and snippets.

@orue
Last active December 22, 2025 17:23
Show Gist options
  • Select an option

  • Save orue/13b2cf72e8225004b8ebf3e79b085732 to your computer and use it in GitHub Desktop.

Select an option

Save orue/13b2cf72e8225004b8ebf3e79b085732 to your computer and use it in GitHub Desktop.
My VSCode 2025
{
// ============================================================================
// WORKBENCH & UI
// ============================================================================
// Theme & Appearance
"workbench.colorTheme": "Catppuccin Macchiato",
"catppuccin.accentColor": "yellow",
"catppuccin.italicKeywords": false,
"workbench.productIconTheme": "fluent-icons",
"workbench.iconTheme": "symbols",
// Layout
"workbench.sideBar.location": "right",
"workbench.startupEditor": "none",
"workbench.settings.editor": "json",
"window.titleBarStyle": "custom",
"window.commandCenter": false,
"chat.commandCenter.enabled": false,
// Explorer
"explorer.compactFolders": false,
"workbench.tree.indent": 16,
"workbench.tree.renderIndentGuides": "none",
// Editor Tabs
"workbench.editor.limit.enabled": true,
"workbench.editor.limit.value": 10,
"workbench.editor.wrapTabs": true,
"workbench.editor.highlightModifiedTabs": true,
"workbench.editor.labelFormat": "short",
"workbench.editor.enablePreview": false,
"workbench.activityBar.location": "top",
"workbench.layoutControl.enabled": false,
// ============================================================================
// EDITOR
// ============================================================================
// Font & Display
"editor.fontFamily": "Dank Mono",
"editor.fontSize": 15,
"editor.fontLigatures": true,
"editor.cursorBlinking": "smooth",
"editor.renderWhitespace": "boundary",
"editor.minimap.enabled": false,
"editor.scrollbar.verticalScrollbarSize": 4,
// Formatting & Indentation
"editor.tabSize": 2,
"editor.detectIndentation": false,
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
// Word Wrap
"editor.wordWrap": "bounded",
"editor.wordWrapColumn": 120,
"editor.rulers": [120],
// Code Intelligence
"editor.suggest.insertMode": "replace",
"editor.linkedEditing": true,
"editor.guides.bracketPairs": "active",
"editor.suggestSelection": "recentlyUsedByPrefix",
// Code Actions
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
},
// Accessibility
"editor.accessibilitySupport": "off",
// ============================================================================
// FILES
// ============================================================================
// File Behavior
"files.autoSave": "onFocusChange",
"files.eol": "\n",
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
// File Associations
"files.associations": {
"*.css": "tailwindcss",
"*.mdx": "markdown",
"docker-compose*.yml": "dockercompose",
"docker-compose*.yaml": "dockercompose",
"Dockerfile*": "dockerfile",
".dockerignore": "ignore",
"*.gohtml": "html",
"*.gotmpl": "html",
"*.tmpl": "html"
},
// File Explorer Exclusions
"files.exclude": {
"**/.git": true,
"**/.DS_Store": true,
"**/dist": true,
"**/build": true,
"**/.next": true,
"**/.turbo": true,
"**/__pycache__": true,
"**/vendor": true
},
// Performance - Watcher Exclusions
"files.watcherExclude": {
"**/node_modules/**": true,
"**/dist/**": true,
"**/build/**": true,
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/.venv/**": true,
"**/venv/**": true,
"**/__pycache__/**": true
},
// ============================================================================
// TERMINAL & DEBUGGING
// ============================================================================
// Terminal
"terminal.integrated.fontFamily": "'Dank Mono','JetBrainsMono Nerd Font Mono'",
"terminal.integrated.fontSize": 15,
"terminal.integrated.scrollback": 10000,
// Debugging
"debug.console.fontSize": 14,
// ============================================================================
// LANGUAGE: JAVASCRIPT & TYPESCRIPT
// ============================================================================
// Language-specific Editor Settings
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
},
"[javascriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
},
// Global JS/TS Settings
"javascript.updateImportsOnFileMove.enabled": "always",
"typescript.updateImportsOnFileMove.enabled": "always",
"javascript.suggest.autoImports": true,
"typescript.suggest.autoImports": true,
"javascript.suggest.names": true,
"typescript.suggest.paths": true,
"javascript.preferences.quoteStyle": "single",
"typescript.preferences.quoteStyle": "single",
"javascript.preferences.importModuleSpecifier": "relative",
"typescript.preferences.importModuleSpecifier": "relative",
"typescript.preferences.includePackageJsonAutoImports": "on",
"typescript.tsserver.experimental.enableProjectDiagnostics": false,
// ============================================================================
// LANGUAGE: PYTHON
// ============================================================================
"[python]": {
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.tabSize": 4,
"editor.codeActionsOnSave": {
"source.organizeImports.ruff": "explicit",
"source.fixAll.ruff": "explicit"
}
},
"python.analysis.typeCheckingMode": "standard",
"python.analysis.diagnosticSeverityOverrides": {
"reportShadowedImports": "warning",
"reportUnusedImport": "warning",
"reportUnusedVariable": "warning",
"reportGeneralTypeIssues": "warning",
"reportMissingTypeStubs": "information",
"reportUnknownMemberType": "none"
},
// ============================================================================
// LANGUAGE: GO
// ============================================================================
"[go]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
},
"editor.defaultFormatter": "golang.go",
"editor.tabSize": 4,
"editor.insertSpaces": true
},
// Go Extension Settings
"go.useLanguageServer": true,
"go.lintTool": "golangci-lint",
"go.lintOnSave": "package",
"go.lintFlags": ["--fast"],
"go.vetOnSave": "package",
"go.formatTool": "default",
"go.testTimeout": "30s",
"go.testFlags": ["-v", "-race"],
"go.coverOnTestPackage": true,
"go.coverMode": "atomic",
"go.enableCodeLens": {
"runtest": true
},
"go.addTags": {
"tags": "json",
"options": "json=omitempty",
"transform": "snakecase"
},
"go.delveConfig": {
"debugAdapter": "dlv-dap",
"hideSystemGoroutines": true,
"showGlobalVariables": false
},
"go.diagnostic.vulncheck": "Imports",
"go.toolsManagement.autoUpdate": true,
// ============================================================================
// LANGUAGE: WEB (HTML, CSS, SCSS)
// ============================================================================
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"[css]": {
"editor.defaultFormatter": "vscode.css-language-features"
},
"[scss]": {
"editor.defaultFormatter": "vscode.css-language-features"
},
// ============================================================================
// PRETTIER
// ==============================================================================
"prettier.printWidth": 120,
"prettier.trailingComma": "all",
"prettier.singleQuote": true,
// ============================================================================
// LANGUAGE: VUE
// ============================================================================
"[vue]": {
"editor.defaultFormatter": "Vue.volar",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
},
// ============================================================================
// FRAMEWORK: REACT
// ============================================================================
// File nesting for React components
"explorer.fileNesting.enabled": true,
"explorer.fileNesting.patterns": {
"*.tsx": "${capture}.module.css, ${capture}.module.scss, ${capture}.test.tsx, ${capture}.stories.tsx",
"*.jsx": "${capture}.module.css, ${capture}.module.scss, ${capture}.test.jsx, ${capture}.stories.jsx",
"*.ts": "${capture}.test.ts",
"*.js": "${capture}.test.js"
},
// ============================================================================
// LANGUAGE: MARKDOWN
// ============================================================================
"[markdown]": {
"editor.wordWrap": "on",
"editor.renderWhitespace": "all",
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.quickSuggestions": {
"other": "on",
"comments": "off",
"strings": "off"
},
"editor.snippetSuggestions": "top"
},
// Markdown Preview
"markdown.preview.breaks": true,
"markdown.preview.fontSize": 14,
"markdown.preview.lineHeight": 1.6,
// Markdown Validation
"markdown.validate.referenceLinks.enabled": "warning",
"markdown.validate.fragmentLinks.enabled": "warning",
"markdown.validate.fileLinks.enabled": "warning",
"markdown.validate.unusedLinkDefinitions.enabled": "warning",
"markdown.validate.duplicateLinkDefinitions.enabled": "warning",
// Markdown Editor
"markdown.editor.pasteUrlAsFormattedLink.enabled": "smart",
"markdown.updateLinksOnFileMove.enabled": "prompt",
// Markdownlint
"markdownlint.config": {
"MD033": false,
"MD013": false,
"MD041": false,
"MD025": false,
"MD024": false
},
// ============================================================================
// LANGUAGE: YAML
// ============================================================================
"[yaml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.tabSize": 2,
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": true
},
"editor.formatOnSave": true
},
// YAML Schemas
"yaml.schemas": {
"https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json": [
"docker-compose*.yml",
"docker-compose*.yaml",
"compose*.yml",
"compose*.yaml"
]
},
// ============================================================================
// LANGUAGE: TOML
// ============================================================================
"[toml]": {
"editor.defaultFormatter": "tamasfe.even-better-toml",
"editor.formatOnSave": true,
"editor.tabSize": 2
},
// Even Better TOML
"evenBetterToml.formatter.alignEntries": false,
"evenBetterToml.formatter.alignComments": true,
"evenBetterToml.formatter.arrayTrailingComma": true,
"evenBetterToml.formatter.compactArrays": true,
"evenBetterToml.formatter.indentTables": false,
// ============================================================================
// LANGUAGE: DOCKER
// ============================================================================
"[dockerfile]": {
"editor.quickSuggestions": {
"strings": true
}
},
// ============================================================================
// LANGUAGE: OTHER
// ============================================================================
"[astro]": {
"editor.defaultFormatter": "astro-build.astro-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
// ============================================================================
// EXTENSIONS
// ============================================================================
// TailwindCSS
"tailwindCSS.experimental.classRegex": [
["cva\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"],
["cx\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"]
],
// Emmet
"emmet.includeLanguages": {
"javascript": "javascriptreact",
"typescript": "typescriptreact",
"vue": "html",
"vue-html": "html",
"astro": "html",
"gohtml": "html",
"gotmpl": "html",
"tmpl": "html"
},
"emmet.showSuggestionsAsSnippets": true,
"emmet.triggerExpansionOnTab": true,
// GitHub Copilot
"github.copilot.enable": {
"*": false,
"plaintext": false,
"markdown": false,
"scminput": false,
"python": false,
"astro": false,
"javascript": false,
"javascriptreact": false,
"typescript": false,
"typescriptreact": false,
"html": false,
"go": false
},
// Code Spell Checker
"cSpell.dictionaryDefinitions": [
{
"name": "personal-dict",
"path": "/Users/orue/Documents/cspell/cspell-personal-dict.txt",
"addWords": true
}
],
"cSpell.dictionaries": ["personal-dict"],
// ============================================================================
// GIT & VERSION CONTROL
// ============================================================================
"git.pruneOnFetch": true,
"git.confirmSync": false,
"git.postCommitCommand": "sync",
"git.enableSmartCommit": true,
"git.autofetch": true,
"git.openRepositoryInParentFolders": "always",
// ============================================================================
// SEARCH
// ============================================================================
"search.smartCase": true,
"search.exclude": {
"**/node_modules": true,
"**/dist": true,
"**/build": true,
"**/.next": true,
"**/.turbo": true,
"**/.venv": true,
"**/__pycache__": true,
"**/vendor": true
},
// ============================================================================
// SECURITY & PRIVACY
// ============================================================================
"telemetry.telemetryLevel": "off",
"extensions.ignoreRecommendations": true,
"liveServer.settings.donotShowInfoMsg": true,
"code-runner.runInTerminal": true
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment