A Visual Studio extension that brings smart file nesting to Solution Explorer. Nest, unnest, and auto-nest files based on naming conventions — keeping your projects tidy and navigable. Supports Community, Professional, and Enterprise editions.
- Nest Files — Manually nest selected files under a parent file using a picker dialog (files must be siblings in the same folder).
- Unnest Files — Remove nesting and restore files to the top level. Only files that are actually nested are touched.
- Auto-Nest — Automatically detect parent–child relationships using built-in rules:
- C# implementations nest under their interfaces (
UserService.cs→IUserService.cs) - Minified/bundled JS files nest under their source (
app.min.js→app.js,app.bundle.js→app.js,app.bundle.min.js→app.bundle.js) - Markdown documentation nests under the matching code file (
UserService.md→UserService.cs; also.vb,.ts,.tsx,.js,.jsx)
- C# implementations nest under their interfaces (
Nesting never changes a file's build action or other item metadata, and Solution Explorer reflects changes immediately — no project reload needed.
.cs .vb .fs .js .jsx .ts .tsx .mjs .mts .cjs .cts .vue .css .scss .less .html .htm .json .xml .config .resx .xaml .razor .cshtml .md
| Requirement | Version |
|---|---|
| Visual Studio | 2022 or later (17.0+) Community, Professional, or Enterprise — amd64 and arm64 |
| .NET Framework | 4.7.2 |
Download and install the Nestify extension from the latest release.
- Right-click one or more files in Solution Explorer.
- Choose one of the Nestify commands from the context menu:
- Nestify: Nest under... — pick a parent file from the dialog.
- Nestify: Unnest — remove the nesting relationship.
- Nestify: Auto-nest — let Nestify find parents automatically based on naming rules.
To use Auto-nest, first enable it once via Nestify: Enable Auto-nest in the project node's context menu — the Auto-nest command then appears on project, folder, and file nodes.
A companion extension for Visual Studio Code lives in vscode-extension/. It brings the same workflow — Nest under..., Unnest, and Auto-nest with the same naming rules — to VS Code's native Explorer file nesting, writing plain explorer.fileNesting.patterns settings that work for teammates even without the extension. See its README for details.
Contributions are welcome! Please read the Contributing Guide before submitting a pull request.
| Project | Description |
|---|---|
Nestify |
Visual Studio extension (VSIX) — targets .NET Framework 4.7.2 |
Nestify.Tests |
Unit tests (MSTest) — targets .NET Framework 4.7.2 |
vscode-extension |
Nestify for VS Code (TypeScript) — builds with npm run compile, tests with npm test |
Run the tests with:
dotnet test Nestify.Tests\Nestify.Tests.csprojThis project follows the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code.
To report a vulnerability, please see SECURITY.md.
Need help? Check out SUPPORT.md for available resources.
This project is licensed under the MIT License.
If you find Nestify useful, consider supporting its development:
