# andikariskys/simpeldesalauwa architecture

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

- Interactive diagram: https://gitdiagram.com/andikariskys/simpeldesalauwa
- Repository: https://github.com/andikariskys/simpeldesalauwa

## Overview

Sistem Informasi Kantor Desa Lauwa provides public information and authenticated online requests for village letters, alongside an administrative interface for managing and verifying requests. The main workflow is a resident submitting a request through the Service controller, with user/request data handled by its model; administrators manage and print request records. The tree and route excerpt establish the distinct request types and admin capabilities, but sampled source does not show all controller-to-model or PDF call sites, so uncertain links are omitted.

Main entry points: [`application/controllers/Service.php`](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Service.php) (Public services), [`application/config/routes.php`](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/config/routes.php) (Application routes), [`application/controllers/Admin.php`](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Admin.php) (Admin operations), [`application/models/M_service.php`](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_service.php) (Service model)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_public["Resident portal"]
  node_service["Public services<br/>[Service.php]"]
  node_portal_views["Portal pages"]
  node_requests["Letter requests"]
end

subgraph group_admin["Administration"]
  node_admin["Admin operations<br/>[Admin.php]"]
  node_admin_views["Admin screens"]
  node_print_views["Print forms"]
  node_pdf["PDF library<br/>[Pdf.php]"]
end

subgraph group_data["Application data"]
  node_service_model["Service model<br/>[M_service.php]"]
  node_admin_model["Admin model<br/>[Admin_model.php]"]
  node_profile_model["Profile model<br/>[M_profile.php]"]
  node_information_model["Information model<br/>[M_information.php]"]
  node_gallery_model["Gallery model<br/>[M_galery.php]"]
  node_contact_model["Contact model<br/>[M_contact.php]"]
  node_service_content_model["Service content model<br/>[M_service.php]"]
end

subgraph group_platform["Web framework"]
  node_routes["Application routes<br/>[routes.php]"]
end

node_resident(("Resident"))
node_admin_actor(("Administrator"))
node_database[("MySQL database")]

node_resident -->|"requests pages"| node_routes
node_routes -->|"dispatches public"| node_service
node_service -->|"checks users"| node_service_model
node_service -->|"serves pages"| node_portal_views
node_service -->|"serves forms"| node_requests
node_service_model -->|"queries users"| node_database
node_service_model -->|"reads requests"| node_database
node_admin_actor -->|"requests admin"| node_routes
node_routes -->|"dispatches admin"| node_admin
node_admin -->|"serves screens"| node_admin_views
node_admin -->|"serves print forms"| node_print_views

click node_routes "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/config/routes.php"
click node_service "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Service.php"
click node_portal_views "https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/service"
click node_requests "https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/service/services"
click node_admin "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Admin.php"
click node_admin_views "https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/Backend"
click node_print_views "https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/Backend/pdf"
click node_pdf "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/libraries/Pdf.php"
click node_service_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_service.php"
click node_admin_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/Admin_model.php"
click node_profile_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_profile.php"
click node_information_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_information.php"
click node_gallery_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_galery.php"
click node_contact_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_contact.php"
click node_service_content_model "https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_service.php"

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_service,node_portal_views,node_requests toneBlue
class node_admin,node_admin_views,node_print_views,node_pdf,node_database toneAmber
class node_service_model,node_admin_model,node_profile_model,node_information_model,node_gallery_model,node_contact_model,node_service_content_model toneMint
class node_routes toneRose
class node_resident,node_admin_actor toneIndigo
```

## Components

### Resident portal

- [Public services](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Service.php): `application/controllers/Service.php`
- [Portal pages](https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/service): `application/views/service`
- [Letter requests](https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/service/services): `application/views/service/services`

### Administration

- [Admin operations](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/controllers/Admin.php): `application/controllers/Admin.php`
- [Admin screens](https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/Backend): `application/views/Backend`
- [Print forms](https://github.com/andikariskys/simpeldesalauwa/tree/main/application/views/Backend/pdf): `application/views/Backend/pdf`
- [PDF library](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/libraries/Pdf.php): `application/libraries/Pdf.php`

### Application data

- [Service model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_service.php): `application/models/M_service.php`
- [Admin model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/Admin_model.php): `application/models/Admin_model.php`
- [Profile model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_profile.php): `application/models/M_profile.php`
- [Information model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_information.php): `application/models/M_information.php`
- [Gallery model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_galery.php): `application/models/M_galery.php`
- [Contact model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_contact.php): `application/models/M_contact.php`
- [Service content model](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/models/M_service.php): `application/models/M_service.php`

### Web framework

- [Application routes](https://github.com/andikariskys/simpeldesalauwa/blob/main/application/config/routes.php): `application/config/routes.php`

### Other components

- **Resident**
- **Administrator**
- **MySQL database**

## Connections

- Resident → Application routes: requests pages
- Application routes → Public services: dispatches public
- Public services → Service model: checks users
- Public services → Portal pages: serves pages
- Public services → Letter requests: serves forms
- Service model → MySQL database: queries users
- Service model → MySQL database: reads requests
- Administrator → Application routes: requests admin
- Application routes → Admin operations: dispatches admin
- Admin operations → Admin screens: serves screens
- Admin operations → Print forms: serves print forms
