# ICodeGenerator

- Kind: `interface`
- Package: [Aspire.TypeSystem](/reference/api/csharp/aspire.typesystem.md)
- Version: `13.3.0`
- Namespace: `Aspire.TypeSystem`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.TypeSystem/ICodeGenerator.cs)

Interface for generating language-specific code from ATS capabilities.

## Definition

```csharp
namespace Aspire.TypeSystem;

public interface ICodeGenerator
{
    // ...
}
```

## Properties

- [Language](/reference/api/csharp/aspire.typesystem/icodegenerator/properties.md#language) : `string` `abstract` `get` -- Gets the target language name (e.g., "TypeScript", "Python").

## Methods

- [GenerateDistributedApplication(AtsContext)](/reference/api/csharp/aspire.typesystem/icodegenerator/methods.md#generatedistributedapplication-atscontext) : `Dictionary<string, string>` `abstract` -- Generates the distributed application SDK code from the ATS context.
