# ardika000/barengin-app architecture

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

- Interactive diagram: https://gitdiagram.com/ardika000/barengin-app
- Repository: https://github.com/ardika000/barengin-app

## Overview

Barengin is a social travel app for booking guided trips, organizing casual outings, arranging personal shopping, and connecting through forums and chat. The main user journey runs from the React/Inertia interface through Laravel routes and feature controllers, which manage domain records and return page data or results. The graph retains the distinct trip, outing, and jastip stages, plus social, payment, and administration capabilities documented in the README. Most feature wiring is inferred from the route/controller structure and README; only chat dispatch and review persistence are visible in sampled source.

Main entry points: [`routes/web.php`](https://github.com/ardika000/barengin-app/blob/main/routes/web.php) (Web routes), [`app/Models`](https://github.com/ardika000/barengin-app/tree/main/app/Models) (Domain records), [`app/Http/Controllers/MidtransController.php`](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/MidtransController.php) (Payment handling), [`app/Http/Controllers/Chat/ChatController.php`](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Chat/ChatController.php) (Chat)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_commerce["Travel and commerce"]
  node_trip["Trip Bareng"]
  node_outing["Pergi Bareng"]
  node_jastip["Jastip orders"]
  node_jastiprequests["Jastip requests"]
  node_payments["Payment handling"]
  node_wallet["Wallet and bills"]
end

subgraph group_community["Community and chat"]
  node_forum["Forum"]
  node_posts["Post interactions<br/>[PostController.php]"]
  node_chat["Chat<br/>[ChatController.php]"]
  node_conversations["Group conversations"]
  node_broadcast["Message broadcast<br/>[MessageSent.php]"]
  node_reviews["Ratings and reviews"]
end

subgraph group_platform["Application platform"]
  node_webui["React pages"]
  node_routes["Web routes<br/>[web.php]"]
  node_auth["Authentication<br/>[AuthController.php]"]
  node_account["Profile and history"]
  node_database[("Domain records")]
end

subgraph group_operations["Administration"]
  node_admin["Admin tools"]
  node_adminfeatures["Admin management"]
  node_scheduler["Scheduled tasks"]
end

node_traveler(("Traveler"))
node_midtrans{{"Midtrans"}}

node_traveler -->|"uses"| node_webui
node_webui -->|"requests"| node_routes
node_routes -->|"dispatches"| node_auth
node_routes -->|"dispatches"| node_trip
node_routes -->|"dispatches"| node_outing
node_routes -->|"dispatches"| node_jastip
node_routes -->|"dispatches"| node_jastiprequests
node_routes -->|"dispatches"| node_payments
node_routes -->|"dispatches"| node_wallet
node_routes -->|"dispatches"| node_forum
node_routes -->|"dispatches"| node_posts
node_routes -->|"dispatches"| node_chat
node_routes -->|"dispatches"| node_conversations
node_routes -->|"dispatches"| node_reviews
node_routes -->|"dispatches"| node_account
node_routes -->|"dispatches"| node_admin
node_trip -->|"reads/writes"| node_database
node_outing -->|"reads/writes"| node_database
node_jastip -->|"reads/writes"| node_database
node_jastiprequests -->|"reads/writes"| node_database
node_payments -->|"reads/writes"| node_database
node_wallet -->|"reads/writes"| node_database
node_forum -->|"reads/writes"| node_database
node_posts -->|"reads/writes"| node_database
node_chat -->|"reads/writes"| node_database
node_conversations -->|"reads/writes"| node_database
node_chat -->|"broadcasts"| node_broadcast
node_reviews -->|"writes ratings"| node_database
node_account -->|"reads/writes"| node_database
node_payments -.->|"processes payments"| node_midtrans
node_admin -->|"reads/writes"| node_database
node_adminfeatures -->|"manages records"| node_database
node_scheduler -->|"updates status"| node_database

click node_webui "https://github.com/ardika000/barengin-app/tree/main/resources/js/Pages"
click node_routes "https://github.com/ardika000/barengin-app/blob/main/routes/web.php"
click node_auth "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Auth/AuthController.php"
click node_trip "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/TripsController.php"
click node_outing "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/PergiBarengController.php"
click node_jastip "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/JastipController.php"
click node_jastiprequests "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/JastipRequestController.php"
click node_payments "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/MidtransController.php"
click node_wallet "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/WalletController.php"
click node_forum "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ForumController.php"
click node_posts "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/PostController.php"
click node_chat "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Chat/ChatController.php"
click node_conversations "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Chat/ChatConversationController.php"
click node_broadcast "https://github.com/ardika000/barengin-app/blob/main/app/Events/MessageSent.php"
click node_reviews "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ReviewController.php"
click node_account "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ProfileHistoryController.php"
click node_database "https://github.com/ardika000/barengin-app/tree/main/app/Models"
click node_admin "https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/AdminDashboardController.php"
click node_adminfeatures "https://github.com/ardika000/barengin-app/tree/main/app/Http/Controllers"
click node_scheduler "https://github.com/ardika000/barengin-app/tree/main/app/Console/Commands"

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_trip,node_outing,node_jastip,node_jastiprequests,node_payments,node_wallet toneBlue
class node_forum,node_posts,node_chat,node_conversations,node_broadcast,node_reviews toneAmber
class node_webui,node_routes,node_auth,node_account,node_database toneMint
class node_admin,node_adminfeatures,node_scheduler toneRose
class node_traveler,node_midtrans toneIndigo
```

## Components

### Travel and commerce

- [Trip Bareng](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/TripsController.php): `app/Http/Controllers/TripsController.php`
- [Pergi Bareng](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/PergiBarengController.php): `app/Http/Controllers/PergiBarengController.php`
- [Jastip orders](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/JastipController.php): `app/Http/Controllers/JastipController.php`
- [Jastip requests](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/JastipRequestController.php): `app/Http/Controllers/JastipRequestController.php`
- [Payment handling](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/MidtransController.php): `app/Http/Controllers/MidtransController.php`
- [Wallet and bills](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/WalletController.php): `app/Http/Controllers/WalletController.php`

### Community and chat

- [Forum](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ForumController.php): `app/Http/Controllers/ForumController.php`
- [Post interactions](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/PostController.php): `app/Http/Controllers/PostController.php`
- [Chat](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Chat/ChatController.php): `app/Http/Controllers/Chat/ChatController.php`
- [Group conversations](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Chat/ChatConversationController.php): `app/Http/Controllers/Chat/ChatConversationController.php`
- [Message broadcast](https://github.com/ardika000/barengin-app/blob/main/app/Events/MessageSent.php): `app/Events/MessageSent.php`
- [Ratings and reviews](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ReviewController.php): `app/Http/Controllers/ReviewController.php`

### Application platform

- [React pages](https://github.com/ardika000/barengin-app/tree/main/resources/js/Pages): `resources/js/Pages`
- [Web routes](https://github.com/ardika000/barengin-app/blob/main/routes/web.php): `routes/web.php`
- [Authentication](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/Auth/AuthController.php): `app/Http/Controllers/Auth/AuthController.php`
- [Profile and history](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/ProfileHistoryController.php): `app/Http/Controllers/ProfileHistoryController.php`
- [Domain records](https://github.com/ardika000/barengin-app/tree/main/app/Models): `app/Models`

### Administration

- [Admin tools](https://github.com/ardika000/barengin-app/blob/main/app/Http/Controllers/AdminDashboardController.php): `app/Http/Controllers/AdminDashboardController.php`
- [Admin management](https://github.com/ardika000/barengin-app/tree/main/app/Http/Controllers): `app/Http/Controllers`
- [Scheduled tasks](https://github.com/ardika000/barengin-app/tree/main/app/Console/Commands): `app/Console/Commands`

### Other components

- **Traveler**
- **Midtrans**

## Connections

- Traveler → React pages: uses
- React pages → Web routes: requests
- Web routes → Authentication: dispatches
- Web routes → Trip Bareng: dispatches
- Web routes → Pergi Bareng: dispatches
- Web routes → Jastip orders: dispatches
- Web routes → Jastip requests: dispatches
- Web routes → Payment handling: dispatches
- Web routes → Wallet and bills: dispatches
- Web routes → Forum: dispatches
- Web routes → Post interactions: dispatches
- Web routes → Chat: dispatches
- Web routes → Group conversations: dispatches
- Web routes → Ratings and reviews: dispatches
- Web routes → Profile and history: dispatches
- Web routes → Admin tools: dispatches
- Trip Bareng → Domain records: reads/writes
- Pergi Bareng → Domain records: reads/writes
- Jastip orders → Domain records: reads/writes
- Jastip requests → Domain records: reads/writes
- Payment handling → Domain records: reads/writes
- Wallet and bills → Domain records: reads/writes
- Forum → Domain records: reads/writes
- Post interactions → Domain records: reads/writes
- Chat → Domain records: reads/writes
- Group conversations → Domain records: reads/writes
- Chat → Message broadcast: broadcasts
- Ratings and reviews → Domain records: writes ratings
- Profile and history → Domain records: reads/writes
- Payment handling → Midtrans: processes payments
- Admin tools → Domain records: reads/writes
- Admin management → Domain records: manages records
- Scheduled tasks → Domain records: updates status
