# hidayatullah70/bimasenaadhirajasaradika_fe architecture

> Architecture diagram of the GitHub repository hidayatullah70/bimasenaadhirajasaradika_fe, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/hidayatullah70/bimasenaadhirajasaradika_fe
- Repository: https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe

## Overview

BARAK IOMS is a React frontend for an integrated outsourcing-management system, with a public company website and role-oriented internal workspaces. The principal business flow runs from marketing lead and opportunity management through client handover to operational staffing and finance billing; other workspaces handle workforce, IT, legal, and executive oversight. Feature pages use service adapters for backend access, with mock and REST modes visible in the sampled client adapter and API client. Most feature implementations and router wiring were not sampled, so cross-domain links are limited to documented handover navigation and capabilities.

Main entry points: [`src/app/router/index.jsx`](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/app/router/index.jsx) (App Router), [`src/services/adapters/clientAdapter.js`](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/adapters/clientAdapter.js) (Client Adapter), [`src/features/marketing/handover/ClientHandoverPage.jsx`](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/marketing/handover/ClientHandoverPage.jsx) (Client Handover), [`src/services/apiClient.js`](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/apiClient.js) (API Client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_public["Public Website"]
  node_landing["Public Pages"]
end

subgraph group_access["Application Access"]
  node_main["App Entry<br/>[main.jsx]"]
  node_router["App Router<br/>[index.jsx]"]
  node_auth["Auth Provider<br/>[AuthProvider.jsx]"]
  node_guards["Route Guards"]
end

subgraph group_business["Business Workspaces"]
  node_website["Website CMS"]
  node_marketing["Marketing CRM"]
  node_handover["Client Handover"]
  node_operations["Operations"]
  node_master["Master Data"]
  node_finance["Finance"]
  node_hrd["HR &amp; Payroll"]
  node_it["IT Support"]
  node_legal["Legal &amp; Compliance"]
  node_director["Executive Oversight"]
  node_audit["Audit Logs<br/>[AuditLogPage.jsx]"]
  node_notifications["Notifications"]
  node_search["Global Search<br/>[GlobalSearch.jsx]"]
  node_clientpage["Client Listing<br/>[ClientListPage.jsx]"]
end

subgraph group_services["Service Access"]
  node_clientadapter["Client Adapter<br/>[clientAdapter.js]"]
  node_adapterset["Service Adapters"]
  node_apiclient["API Client<br/>[apiClient.js]"]
  node_mockclients[("Mock Client Data<br/>[mockMasterData.js]")]
  node_auditlogger["Audit Logger<br/>[auditLogger.js]"]
end

node_visitor(("Visitor"))
node_backend["REST API"]

node_visitor -->|"opens routes"| node_router
node_main -->|"wraps app"| node_auth
node_main -->|"renders"| node_router
node_router -->|"routes to"| node_landing
node_router -->|"dispatches through"| node_guards
node_guards -->|"checks access"| node_auth
node_router -->|"routes to"| node_website
node_router -->|"routes to"| node_marketing
node_router -->|"routes to"| node_operations
node_router -->|"routes to"| node_master
node_router -->|"routes to"| node_finance
node_router -->|"routes to"| node_hrd
node_router -->|"routes to"| node_it
node_router -->|"routes to"| node_legal
node_router -->|"routes to"| node_director
node_router -->|"routes to"| node_audit
node_router -->|"routes to"| node_notifications
node_router -->|"routes to"| node_search
node_marketing -->|"includes archive"| node_handover
node_handover -->|"links to"| node_operations
node_handover -->|"links to"| node_finance
node_clientpage -->|"fetches clients"| node_clientadapter
node_clientadapter -->|"reads"| node_mockclients
node_clientadapter -.->|"uses in REST mode"| node_apiclient
node_clientadapter -->|"records changes"| node_auditlogger
node_adapterset -.->|"uses"| node_apiclient
node_apiclient -.->|"sends REST requests"| node_backend

click node_main "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/main.jsx"
click node_router "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/app/router/index.jsx"
click node_auth "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/app/providers/AuthProvider.jsx"
click node_guards "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/app/guards"
click node_landing "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/landing"
click node_website "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/website"
click node_marketing "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/marketing"
click node_handover "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/marketing/handover/ClientHandoverPage.jsx"
click node_operations "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/operations"
click node_master "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/master"
click node_finance "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/finance"
click node_hrd "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/hrd"
click node_it "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/it"
click node_legal "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/legal"
click node_director "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/director"
click node_audit "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/audit/AuditLogPage.jsx"
click node_notifications "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/notifications/NotificationPage.jsx"
click node_search "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/search/GlobalSearch.jsx"
click node_clientpage "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/master/clients/ClientListPage.jsx"
click node_clientadapter "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/adapters/clientAdapter.js"
click node_adapterset "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/services/adapters"
click node_apiclient "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/apiClient.js"
click node_mockclients "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/mock/mockMasterData.js"
click node_auditlogger "https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/utils/auditLogger.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_landing toneBlue
class node_main,node_router,node_auth,node_guards toneAmber
class node_website,node_marketing,node_handover,node_operations,node_master,node_finance,node_hrd,node_it,node_legal,node_director,node_audit,node_notifications,node_search,node_clientpage,node_backend toneMint
class node_clientadapter,node_adapterset,node_apiclient,node_mockclients,node_auditlogger toneRose
class node_visitor toneIndigo
```

## Components

### Public Website

- [Public Pages](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/landing): `src/features/landing`

### Application Access

- [App Entry](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/main.jsx): `src/main.jsx`
- [App Router](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/app/router/index.jsx): `src/app/router/index.jsx`
- [Auth Provider](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/app/providers/AuthProvider.jsx): `src/app/providers/AuthProvider.jsx`
- [Route Guards](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/app/guards): `src/app/guards`

### Business Workspaces

- [Website CMS](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/website): `src/features/website`
- [Marketing CRM](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/marketing): `src/features/marketing`
- [Client Handover](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/marketing/handover/ClientHandoverPage.jsx): `src/features/marketing/handover/ClientHandoverPage.jsx`
- [Operations](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/operations): `src/features/operations`
- [Master Data](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/master): `src/features/master`
- [Finance](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/finance): `src/features/finance`
- [HR & Payroll](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/hrd): `src/features/hrd`
- [IT Support](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/it): `src/features/it`
- [Legal & Compliance](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/legal): `src/features/legal`
- [Executive Oversight](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/features/director): `src/features/director`
- [Audit Logs](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/audit/AuditLogPage.jsx): `src/features/audit/AuditLogPage.jsx`
- [Notifications](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/notifications/NotificationPage.jsx): `src/features/notifications/NotificationPage.jsx`
- [Global Search](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/search/GlobalSearch.jsx): `src/features/search/GlobalSearch.jsx`
- [Client Listing](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/features/master/clients/ClientListPage.jsx): `src/features/master/clients/ClientListPage.jsx`

### Service Access

- [Client Adapter](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/adapters/clientAdapter.js): `src/services/adapters/clientAdapter.js`
- [Service Adapters](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/tree/main/src/services/adapters): `src/services/adapters`
- [API Client](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/apiClient.js): `src/services/apiClient.js`
- [Mock Client Data](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/services/mock/mockMasterData.js): `src/services/mock/mockMasterData.js`
- [Audit Logger](https://github.com/hidayatullah70/bimasenaadhirajasaradika_fe/blob/main/src/utils/auditLogger.js): `src/utils/auditLogger.js`

### Other components

- **Visitor**
- **REST API**

## Connections

- Visitor → App Router: opens routes
- App Entry → Auth Provider: wraps app
- App Entry → App Router: renders
- App Router → Public Pages: routes to
- App Router → Route Guards: dispatches through
- Route Guards → Auth Provider: checks access
- App Router → Website CMS: routes to
- App Router → Marketing CRM: routes to
- App Router → Operations: routes to
- App Router → Master Data: routes to
- App Router → Finance: routes to
- App Router → HR & Payroll: routes to
- App Router → IT Support: routes to
- App Router → Legal & Compliance: routes to
- App Router → Executive Oversight: routes to
- App Router → Audit Logs: routes to
- App Router → Notifications: routes to
- App Router → Global Search: routes to
- Marketing CRM → Client Handover: includes archive
- Client Handover → Operations: links to
- Client Handover → Finance: links to
- Client Listing → Client Adapter: fetches clients
- Client Adapter → Mock Client Data: reads
- Client Adapter → API Client: uses in REST mode
- Client Adapter → Audit Logger: records changes
- Service Adapters → API Client: uses
- API Client → REST API: sends REST requests
