# Development

Guides for building and deploying applications with Forge.

---

## 🚀 Getting Started

| Guide                                            | Description                                                                  |
| ------------------------------------------------ | ---------------------------------------------------------------------------- |
| [Installing the SAIF CLI](install-saif-cli.md)   | Install and configure the SAIF CLI for project creation and automation       |
| [TypeSpec API Contract Development](typespec.md) | Define API contracts using TypeSpec for OpenAPI generation                   |
| [TypeSpec API Design](typespec-api-design.md)    | Design APIs using TypeSpec patterns and best practices                       |
| [Settings and Secrets](settings-and-secrets.md)  | Manage application settings and secrets with App Configuration and Key Vault |

---

## 💾 Data Storage

| Guide                                      | Description                                                         |
| ------------------------------------------ | ------------------------------------------------------------------- |
| [Cosmos DB NoSQL](data/cosmos-nosql.md)    | Add Azure Cosmos DB NoSQL to your application with Entity Framework |
| [Oracle Database](data/database-oracle.md) | Set up Entity Framework with Oracle Database                        |
| [Storage Account](data/storage-account.md) | Integrate Azure Blob Storage for file operations                    |

---

## 📡 Eventing & Integration

| Guide                                                | Description                                                   |
| ---------------------------------------------------- | ------------------------------------------------------------- |
| [Event Service](eventing/event-service.md)           | Create an APIM API to publish events to Azure Service Bus     |
| [Event Subscription](eventing/event-subscription.md) | Add Service Bus event subscription capabilities to your app   |
| [Calling Downstream APIs](calling-apis.md)           | Configure Kiota clients to call other APIs with proper scopes |

---

## 🧪 Mocking & Testing

| Guide                                                                                       | Description                                                              |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| [API Integration Testing](testing/api-integration-testing.md)                               | Test API endpoints using Aspire's DistributedApplicationTestingBuilder   |
| [Web Integration Testing](testing/web-integration-testing.md)                               | Browser-based end-to-end testing with Playwright and Aspire              |
| [Integration Test Environment Variables](testing/integration-test-environment-variables.md) | Inject environment variables into integration test runs via the pipeline |
| [Hosting WireMock CLI](mocking/host-wiremock-cli.md)                                        | Configure WireMock hosting in Aspire for local API mocking               |
| [Recording API Mocks](mocking/wiremock-cli-record.md)                                       | Record and save API mocks using WireMock CLI and httpyac                 |

---

## 📖 Documentation

| Guide                                                  | Description                                                         |
| ------------------------------------------------------ | ------------------------------------------------------------------- |
| [Documentation Site](documentation-site.md)            | Add an MkDocs documentation site with Azure DevOps deploy pipelines |

---

## 🚀 Deployment & Pipelines

| Guide                                               | Description                                                        |
| --------------------------------------------------- | ------------------------------------------------------------------ |
| [Aspire Publish](aspire-publish.md)                 | Generate pipeline YAML and infrastructure config from your AppHost |
| [Blue-Green Deployments](blue-green-deployments.md) | Configure zero-downtime deployments with manual validation gates   |
| [PR Slot Deployments](pr-slot-deployments.md)       | Preview PR changes in a live environment with cookie-based routing |

---

## 🔍 Troubleshooting

| Guide                                                   | Description                                                |
| ------------------------------------------------------- | ---------------------------------------------------------- |
| [Aspire Troubleshooting](aspire-troubleshooting.md)     | Debug Aspire startup issues, resource failures, and errors |
| [Pipeline Troubleshooting](pipeline-troubleshooting.md) | Resolve Azure DevOps pipeline errors and build failures    |

---

## 🔗 Related Resources

- [Tutorials](../tutorials/index.md) - Step-by-step learning guides
- [Security](../security/index.md) - Authentication and authorization configuration
- [Tools Reference](../../reference/tools/index.md) - Tool documentation and capabilities
