# Architecture

Architectural diagrams and design documentation for the Forge platform.

---

## 📋 Architecture Documentation

| Document                      | Description                                             |
| ----------------------------- | ------------------------------------------------------- |
| [Golden Path](golden-path.md) | Standardized patterns and best practices for Forge apps |

---

## 📊 Diagrams

| Diagram                                       | Description                                            | Format    |
| --------------------------------------------- | ------------------------------------------------------ | --------- |
| [System Design](#system-design)               | High-level overview of the Forge platform architecture | `.drawio` |
| [Azure Infrastructure](#azure-infrastructure) | Azure resource topology and service dependencies       | `.drawio` |
| [Eventing](#eventing)                         | Event-driven architecture patterns and message flows   | `.drawio` |
| [Front Door](#front-door)                     | Azure Front Door configuration and routing patterns    | `.drawio` |

---

## System Design

The system design diagram provides a high-level overview of how Forge applications are structured and deployed.

**Source:** `system-design.drawio`

**Key Components:**

- Application hosting with Azure App Service
- API Management for gateway and policy enforcement
- Identity integration with Entra ID and Okta
- Infrastructure provisioning with Terraform

---

## Azure Infrastructure

The Azure infrastructure diagram shows the resource topology for a typical Forge application deployment.

**Source:** `azure.drawio`

**Key Components:**

- Resource group organization by environment
- Networking with VNets and Private Endpoints
- Managed identities for secure service-to-service communication
- Key Vault for secrets management

---

## Eventing

The eventing diagram illustrates event-driven architecture patterns used in Forge applications.

**Source:** `eventing.drawio`

**Key Components:**

- Azure Service Bus for message queuing
- Event subscriptions and topic routing
- Cosmos DB change feed integration
- Saga patterns for distributed transactions

---

## Front Door

The Front Door diagram shows how Azure Front Door is configured for global load balancing and routing.

**Source:** `front-door.drawio`

**Key Components:**

- Origin groups and health probes
- Routing rules and caching policies
- WAF integration for security
- Custom domain configuration

---

## 🔧 Viewing Diagrams

These diagrams are in Draw.io format (`.drawio`). To view or edit:

1. **VS Code:** Install the [Draw.io Integration](https://marketplace.visualstudio.com/items?itemName=hediet.vscode-drawio) extension
2. **Online:** Upload to [app.diagrams.net](https://app.diagrams.net)
3. **Desktop:** Use [Draw.io Desktop](https://www.drawio.com/)

---

## 📚 Related Documentation

- [Version Compatibility](../version-compatibility.md) - Framework versions and support matrix
- [Environments](../environments.md) - Environment configurations and deployment flow
- [Tools & Technologies](../tools/index.md) - Reference documentation for platform tools
