Track TypeScript AppHost support for Azure Functions apps
- Dominant language
- C#
- Stars
- 6.3k
- Forks
- 991
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 196
Description
## Summary
Track the Azure Functions non-.NET language POC for TypeScript AppHosts and TypeScript/JavaScript Functions apps.
## Current POC status
- Added a directory-based Azure Functions app resource for Node worker apps.
- Added TypeScript AppHost support via `addAzureFunctionsApp(...)`.
- Added local run support with Azure Functions Core Tools and `FUNCTIONS_WORKER_RUNTIME=node`.
- Added Node debugging support using `languageWorkers__node__arguments=--inspect=` and VS Code `pwa-node` attach.
- Added deterministic Dockerfile publishing for TypeScript/JavaScript Functions apps using the official Azure Functions Node base image.
- Added an Azure Container Apps publish path where Functions containers use `targetPort: 80` and `kind: functionapp`.
- Added a playground sample at `playground/TypeScriptApps/AzureFunctionsWithStorage` with a TypeScript AppHost, TypeScript Function, and Azure Storage dependency.
## Validation completed
- Clean isolated local `aspire start` for the TypeScript AppHost.
- `aspire wait functions` reached healthy.
- HTTP trigger wrote a blob through the modeled `samples` blob container.
- `aspire publish` emitted ACA Bicep and the generated Functions Dockerfile.
- `aspire deploy --list-steps` produced a deploy pipeline without creating Azure resources.
- Targeted Azure Functions hosting tests passed.
- Focused VS Code Node Functions debugger test passed.
## Follow-ups
- Decide whether the new public API shape is final or should be refined before merging.
- Decide whether to generalize beyond TypeScript/JavaScript to Python or other script workers.
- Decide if debug port allocation should avoid collisions for multiple Node Functions apps.
- Decide whether Dockerfile options such as Node version/base image should become customization APIs.
- Run a real Azure deploy once subscription/resource group/location are chosen and billable resource creation is approved.
Contributor guide
Research direction
Start with addAzureFunctionsApp(...) and the playground sample at playground/TypeScriptApps/AzureFunctionsWithStorage, then review the targeted Azure Functions hosting tests and the VS Code Node Functions debugger test. The POC validation is complete; the remaining work is to resolve the public API, worker-language scope, debug-port, Dockerfile customization, and deployment decisions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, docker, javascript, node.js, typescript
- Domain
- backend, cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100