Foundry¶
As forge shapes metal, the foundry casts and molds prototypes.
The Foundry contains sample projects and experimental implementations for exploring new technologies, prototyping features, and demonstrating integration patterns across the Forge platform.
๐ Purpose¶
| Use Case | Description |
|---|---|
| ๐งช Experimentation | Test new libraries, frameworks, or architectural patterns |
| ๐๏ธ Prototyping | Build proof-of-concepts before implementing in main codebase |
| ๐ Learning | Explore new technologies in a sandboxed environment |
| ๐ Integration Testing | Test interactions between different platform components |
๐ Structure¶
foundry/
โโโ dotnet/ # .NET examples and experiments
โ โโโ aspire-blobstorage/ # Azure Blob Storage file upload with Aspire
โ โโโ aspire-config/ # Aspire publish-time configuration generation
โ โโโ aspire-playwright/ # Playwright integration testing with Aspire
โ โโโ aspire-wiremockcli/ # WireMock CLI with Aspire & Kiota
โ โโโ devtunnels-simple-webhook/ # DevTunnels webhook receiver
โ โโโ event-orchestration/ # Saga pattern with Durable Functions
โ โโโ events-with-cosmos/ # Event-driven architecture with Cosmos DB
โโโ terraform/ # Terraform examples
โโโ azure-apim-policy/ # API Management policy patterns
๐ฏ Examples¶
.NET Examples¶
| Example | Status | Description | Key Technologies |
|---|---|---|---|
| Aspire Blob Storage | Preview | File upload with Azure Blob Storage | Aspire 13, Azure Storage, React, .NET 10 |
| Aspire Config | Preview | Publish-time security configuration | Aspire 13, Security Extensions, .NET 10 |
| Aspire Playwright | Preview | Browser-based integration testing | Aspire 13, Playwright, React, Kiota |
| Aspire WireMock CLI | Preview | API mocking with Kiota client generation | Aspire, WireMock CLI, Kiota |
| DevTunnels Webhook | Preview | Public webhook receiver with DevTunnels | Aspire, DevTunnels, React |
| Event Orchestration | Preview | Saga pattern for distributed transactions | Durable Functions, Service Bus, Cosmos DB |
| Events with Cosmos | Preview | Event-driven architecture patterns | Azure Functions, Service Bus, Cosmos DB |
Terraform Examples¶
| Example | Status | Description | Key Technologies |
|---|---|---|---|
| Azure APIM Policy | Preview | API Management policy patterns | Terraform, Azure APIM |
โ ๏ธ Guidelines¶
Foundry Experiments
Code in foundry is temporary and experimental. These examples demonstrate patterns and possibilities, not production-ready implementations.
Key rules:
- No production dependencies on foundry code
- Clean up experiments when completed
- Use descriptive folder names for experiments
- Document the purpose and learnings
๐ Getting Started¶
To create a new experiment:
mkdir foundry/{domain}/{experiment-name}
cd foundry/{domain}/{experiment-name}
# Start your experiment
๐ Code Location¶
All Foundry code lives at the repository root under /foundry/. This documentation provides overviews and guidance, while the actual implementations are in the source directories.
| Documentation | Source Code |
|---|---|
docs/foundry/ |
foundry/dotnet/ and foundry/terraform/ |
๐ Related Documentation¶
- Contributing to Forge - Guidelines for platform contributors
- Development Guides - Building and testing applications
- Aspire Reference - Aspire orchestration fundamentals