Skip to content

[Feature] Enable/Disable Extensions from the .vscode Folder #322983

Description

@maximovj

Description

I've been using VS Code for a long time, primarily for web application development, and have accumulated a large number of installed extensions over time.

I'd like to propose a feature that allows enabling and disabling extensions per project via the .vscode folder, using either an extensions.json or settings.json file. Specifically, it would be great to define arrays to toggle extensions on or off for the current workspace.

Example:

{
  "extensions_enabled": [
    "esbenp.prettier-vscode",
    "dbaeumer.vscode-eslint",
    "bradlc.vscode-tailwindcss"
  ],
  "extensions_disabled": [
    "ms-vscode.vscode-typescript-next"
  ]
}

Justification

While VS Code supports profiles that allow managing extension sets globally, many projects don't require all installed extensions to be active. For example, a NestJS project typically doesn't need HTML, CSS, or JavaScript syntax styling extensions — yet they may still be loaded, consuming valuable system memory.

This feature would:

  • Reduce RAM usage per project.
  • Improve performance by loading only relevant extensions.
  • Provide a more focused and lightweight development experience.
  • Allow teams to standardize extension usage across a project.

Additional Context

This would be similar to how workspace settings already override user settings, but specifically for extension lifecycle management.

Would love to hear feedback from the team and community on this idea.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions