Aspire 13 has been released as a major milestone in the platform’s evolution. As reported by the team, Aspire is no longer branded as “.NET Aspire” and is now positioned as a full polyglot application platform. According to the announcement, version 13 brings first-class support for Python and JavaScript alongside existing .NET capabilities, marking a significant shift toward multi-language development, debugging, and deployment workflows.
As noted in the release, Python support now includes running scripts, modules, and virtual-environment executables, along with dedicated Uvicorn integration for ASGI frameworks. Aspire automatically configures endpoints, command-line arguments, and development-time reload features.
var builder = DistributedApplication.CreateBuilder(args);
// Run a Python script directly
var etl = builder.AddPythonApp("etl-job", "../etl", "process_data.py");
// Run a Python module (python -m celery)
var worker = builder.AddPythonModule("celery-worker", "../worker", "celery")
.WithArgs("worker", "-A", "tasks", "--loglevel=info");
// Run an executable from the virtual environment (e.g., gunicorn)
var api = builder.AddPythonExecutable("api", "../api", "gunicorn")
.WithArgs("app:app", "--bind", "0.0.0.0:8000");
Package management is handled by automatically detecting pip, uv, or virtual environments, also production Dockerfiles are generated based on the project configuration.
JavaScript support has also been expanded. As stated by the team, the new AddJavaScriptApp model replaces older mechanisms and introduces unified detection of package managers, automatic script execution, and container-based build pipelines. Vite applications benefit from specialized handling, including optimized builds and hot module replacement.
The update further introduces a polyglot infrastructure layer. As reported, database resources now expose connection details in multiple formats, such as URI, JDBC, and individual properties, enabling cross-language compatibility. Aspire automatically configures development certificate trust for Python, Node.js, and containerized applications, simplifying secure local communication.
Regarding the service discovery for non-.NET applications, it has been simplified by introducing simple HTTP and HTTPS environment variables.
A major architectural change highlighted in the release is the introduction of aspire do, a new pipeline system for build, publish, and deployment operations. According to the announcement, this replaces previous publishing infrastructure and provides dependency tracking, parallel execution, and detailed diagnostics.
aspire do deploy # Runs all steps necessary to deploy the app
aspire do publish --output-path ./artifacts # Custom output path
aspire do deploy --environment Production # Target specific environment
aspire do deploy --log-level debug # Verbose logging for troubleshooting
The platform also adds support for using container files as build artifacts, enabling scenarios where frontend builds are transferred into backend containers. An experimental Dockerfile builder API is included for programmatic container generation.
Tooling improvements include the new aspire init command, which offers an interactive setup experience. As noted by the team, starter templates have been reorganized around common application patterns, and the aspire update command now includes a self-update option for the CLI.
A preview feature also enables automatic installation of missing .NET SDK versions. Support for single-file AppHost definitions and non-interactive execution modes for CI/CD pipelines has also been expanded.
Dashboard enhancements include an integrated MCP server for AI assistant interaction, updated visual elements such as language icons and accent colors, and improved health-check visibility. As stated, the interaction service now supports dynamic inputs and combobox-style fields.
(MCP server integrated into Dashboard, Source: Official Aspire Docs)
Cloud-related improvements include Azure tenant selection during provisioning, expanded App Service deployment features, and automatic Application Insights integration. Deployment state is now persisted locally to simplify repeated deployments.
The release also includes breaking changes, package renames, API removals, and adjustments to endpoint and lifecycle models. Experimental features, such as file-based C# apps and dynamic input loading, remain available but may evolve in future versions.
For interested readers, the full release notes are available on the Aspire documentation site.
