Skip to content
Amer Khorsheed
All work

Case 09Registry · Correspondence · Workflow

Every letter, approval and request — tracked end to end.الديوان الإلكتروني

Year
2026
Status
Built 2026
Discipline
Registry · Correspondence · Workflow
e-Diwan transactions register

Internal system · screens captured from a local run with sample records

95
test files
15
staff roles
100%
Arabic RTL

01 — The problem

Correspondence moved on paper between the president’s office, deans and departments. Nobody could see where a letter was, who held it, or how long it had waited — and approvals depended on people being physically present.

The university’s electronic registry: incoming, outgoing and internal correspondence, configurable approval workflows for leave and materials, delegations, a warehouse ledger and an electronic archive — fully Arabic and right-to-left.

02 — What I built

  1. 01

    A registry of transactions with numbering per unit, classification, priority and status, plus an inbox that surfaces what is overdue, urgent or due soon.

  2. 02

    A workflow engine with versioned definitions and live instances — leave requests and materials purchasing run through their real approval chains.

  3. 03

    Delegations, recipient groups, document templates and official PDF output with Arabic shaping and QR verification.

  4. 04

    An electronic archive, advanced full-text search, a reports centre and a complete audit log.

03 — Architecture

How the pieces fit.

  1. L1Interface
    • Filament 3 panels
    • Arabic RTL
    • Role-aware navigation
  2. L2Application
    • Actions & services
    • Policies & observers
    • Domain DTOs, enums, value objects
  3. L3Platform
    • Laravel 12
    • Horizon queues · Redis
    • Scout + Meilisearch
  4. L4Storage
    • MySQL
    • MinIO object storage
    • PDF rendering service

Requests flow top to bottom · each layer depends only on the one beneath

04 — Decisions that matter

Decisions

D01

Workflows as data

Approval chains are versioned definitions, so a process can change without breaking the requests already moving through it.

D02

Permissions generated, not hand-written

Filament Shield and Spatie permissions derive access from resources, keeping more than a dozen roles consistent.

D03

Search outside the database

Meilisearch indexes correspondence for instant Arabic search without loading the transactional database.

05 — Security & trust

  • Role- and unit-scoped access across the university hierarchy.
  • Complete audit log of every action.
  • Private disk for documents, never publicly addressable.
  • Rate-limited API.

06 — Stack

  • Laravel 12
  • Filament 3
  • MySQL
  • Redis
  • Horizon
  • Meilisearch
  • MinIO
  • Pest

07 — In the product

e-Diwan inbox with priorities
The inbox — overdue, urgent and due-soon at a glance.
e-Diwan workflow instances
Live workflow instances and their current step.
e-Diwan daily dashboard
The daily diwan centre.
e-Diwan reports centre
From data to a decision in three steps.

Next case · 10

Admissions & HR

The university’s internal operations, in one place.