# ICodeGenerator

- Kind: `interface`
- Package: [Aspire.TypeSystem](/reference/api/csharp/aspire.typesystem.md)
- Version: `13.4.0`
- Namespace: `Aspire.TypeSystem`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/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.
