Appearance
Fooj Project Overview
Section: 17 — Fooj
Last Updated: 2026-05-30
Scope: Fooj project summary, subscription, environments, cost
IMPORTANT
Fooj is a completely separate Azure subscription from the ERP system. Infrastructure, billing, and deployments are independent. Do not mix ERP and Fooj resources.
What is Fooj?
Fooj is a separate product running on the Microtec platform pattern. It is hosted independently on its own Azure subscription with a simpler architecture than ERP — single backend, two frontend apps.
| Property | Value |
|---|---|
| Product | Fooj (customer-facing marketplace/portal) |
| Azure Subscription ID | f2340b90-2a00-4551-aabc-6e1776e82077 |
| Architecture | Single .NET 8 API + Angular 18 SSR + Angular 18 Admin |
| Environments | Stage, Production |
| Domains | See environment table below |
Architecture Summary
Unlike ERP, Fooj uses Azure SQL PaaS (not the shared SQL VM), and all services run in a single shared CAE per environment.
Differences from ERP
| Aspect | ERP | Fooj |
|---|---|---|
| Azure subscription | ERP subscription | f2340b90-2a00-4551-aabc-6e1776e82077 |
| Backend services | 14+ microservices | 1 API (Fooj.Apis) |
| Frontend apps | 10 Angular apps | 2 Angular apps (SSR + Admin) |
| Database | SQL Server VM (multi-tenant) | Azure SQL PaaS (single tenant) |
| CAE layout | Public + Private | Single shared CAE |
| Multi-tenancy | Database-per-tenant | Not applicable |
| Network | VNet per environment (8 CIDRs) | Shared VNet 10.20.0.0/16 |
| NAT Gateway IP | Per-environment | Single: 20.26.0.39 |
Environments
| Environment | Frontend URL | API URL | Status |
|---|---|---|---|
| Stage | staging.fooj.sa | api-staging.fooj.sa | Active |
| Production | www.fooj.sa | api.fooj.sa | Active |
NOTE
Fooj has only two environments (stage + production). There is no separate dev, preprod, or UAT for Fooj.
Cost Estimates
| Environment | Estimated Monthly Cost |
|---|---|
| Stage | ~$40 USD |
| Production | ~$170 USD |
Cost Breakdown (Production)
| Resource | Estimated Cost |
|---|---|
| Azure Container Apps (Fooj.Apis) | ~$35 |
| Azure Container Apps (Keycloak) | ~$30 |
| Azure Container Apps (SSR frontend) | ~$15 |
| Azure Container Apps (Admin) | ~$10 |
| Azure SQL PaaS (Standard S1) | ~$25 |
| Azure Redis Cache (C0 Basic) | ~$15 |
| NAT Gateway (shared with ERP) | ~$20 |
| Load Balancer / Bandwidth | ~$10 |
| Container Registry | ~$10 |
| Total | ~$170 |
Stage is cheaper primarily because:
- All services scale to zero when idle (min-replicas: 0)
- Shared NAT Gateway with production (see shared-egress.md)
- Minimal traffic, no sustained compute cost
Shared Patterns with ERP
Despite being a separate product, Fooj shares:
| Pattern | Shared with ERP |
|---|---|
| Keycloak for auth | Yes (same Keycloak patterns, separate instance) |
| Clean Architecture (.NET 8) | Yes |
| Angular 18 (upgraded from 17) | Similar (ERP uses 17) |
| Azure Container Apps | Yes |
| YARP gateway | Yes |
| APIResponse<T> envelope | Yes |
| Serilog + Seq | Yes |
| OpenTelemetry | Yes |
| Azure DevOps CI/CD | Yes |
Key Contacts & Resources
| Resource | Path / URL |
|---|---|
| Infrastructure code | Devops/fooj/ |
| Fooj pipelines | Azure DevOps: Fooj project |
| Stage Keycloak | https://auth-staging.fooj.sa |
| Prod Keycloak | https://auth.fooj.sa |