JavaScript resources launched by Aspire cannot automatically attach Visual Studio debugger (parity with .NET projects)
- Dominant language
- C#
- Stars
- 6.3k
- Forks
- 991
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 196
Description
### Is there an existing issue for this?
- [x] I have searched the existing issues
### Is your feature request related to a problem? Please describe the problem.
First — Aspire has been fantastic for orchestrating multi-service .NET applications locally. The AppHost model and dashboard significantly improve the inner-loop experience for distributed systems.
However, there is currently a gap when using JavaScript frontends (Angular in this case) as Aspire resources.
**Current behavior**
When a JavaScript project is added via AddJavaScriptApp / npm integration:
Aspire launches the frontend using the configured npm script.
The application runs correctly and participates in Aspire orchestration (lifecycle, environment configuration, service discovery, dashboard, etc.).
Visual Studio does not automatically attach a debugger to the Node process or browser session.
In contrast:
When the same frontend is started as an .esproj startup project, Visual Studio automatically launches and attaches the appropriate debugger.
When the frontend is launched by Aspire, debugging requires manual Debug → Attach to Process, which breaks the normal F5 workflow.
**Impact**
This creates a difficult trade-off:
Use Aspire for orchestration but lose automatic debugging for the frontend, or
Use multiple startup projects to retain debugging but lose Aspire’s orchestration benefits for the frontend.
For teams using Visual Studio as their primary IDE, this makes it difficult to adopt Aspire as the single entry point for full-stack applications.
**Expected behavior**
Ideally, JavaScript resources would have debugging behavior similar to AddProject():
Aspire communicates debugger metadata to Visual Studio when launching JavaScript resources.
Visual Studio automatically attaches the appropriate debugger (Node and/or browser) during F5 execution.
The frontend remains fully managed by Aspire.
This would allow Aspire to function as the true orchestration host for full-stack applications without sacrificing the normal debugging experience.
**Additional context**
This is specifically about Visual Studio debugging, not VS Code. The issue appears to be that JavaScript resources are currently treated as external processes rather than debuggable resources.
Providing debugger metadata (similar to launch settings for .NET projects) would likely resolve this.
### Describe the solution you'd like
Ideally, JavaScript resources would have debugging behavior similar to AddProject():
Aspire communicates debugger metadata to Visual Studio when launching JavaScript resources.
Visual Studio automatically attaches the appropriate debugger (Node and/or browser) during F5 execution.
The frontend remains fully managed by Aspire.
This would allow Aspire to function as the true orchestration host for full-stack applications without sacrificing the normal debugging experience.
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.