Institutional governance platform designed to support the structured management of judicial officers, courts, professional records and operational workflows across multiple regions.
Built with Laravel, Filament, role-based access control and Arabic RTL support, the platform centralizes member administration, judicial acts, court assignments, dashboards, reporting and secure API integrations.
The solution also integrates with the NOUR mobile application to support coordinated institutional and field workflows.
Stack: Laravel 12 · Filament 3 · MySQL · Sanctum · Arabic RTL UI
This platform provides an institutional back-office for managing judicial officers, courts, professional records and structured operational workflows.
It centralizes member administration, court assignments, judicial acts, dashboards, reporting and role-based access within an Arabic RTL environment.
A Sanctum API supports secure integration with the NOUR mobile application, enabling coordinated institutional and field workflows.
The repository presents the platform’s foundational architecture, data model and principal operational modules developed for judicial-sector digital modernization.
Professional institutions that manage regulated members across multiple regions often rely on fragmented spreadsheets, manual records, paper-based procedures and disconnected communication channels.
This creates operational challenges:
- inconsistent member records;
- limited visibility across regions and courts;
- weak access control between national and regional administrators;
- difficult tracking of procedures, acts and complaints;
- lack of centralized dashboards and institutional KPIs;
- poor integration between back-office governance and field/mobile operations.
Governance Platform addresses this by centralizing institutional records, regional administration, court structures, member profiles, procedures, complaints and mobile access provisioning in one secure Laravel-based back-office.
I designed and developed Governance Platform as a full institutional back-office system.
My work included:
- designing the Laravel/Filament application architecture;
- implementing the core data model for regions, courts, members, acts and complaints;
- building Filament resources, dashboards and administrative workflows;
- structuring role-based access control for national and regional administration;
- preparing Arabic RTL interfaces for institutional users;
- integrating Laravel Sanctum for mobile/API access;
- designing the user provisioning logic connected to NOUR Mobile;
- preparing the platform as the administrative backbone of the broader WITI ecosystem.
Governance Platform uses a role-based access model designed for institutional environments.
The platform separates access between:
- Super Admin — national-level administration and full platform visibility;
- Regional Admin — access limited to assigned regional scope;
- Huissier / Member User — controlled access for mobile and field integration.
Security and access decisions include:
- role-based permissions;
- regional data scoping;
- Laravel policies and Filament access controls;
- Sanctum-based API authentication;
- automatic user provisioning for mobile access;
- separation between administrative back-office and field/mobile workflows;
- portfolio-safe public repository with production secrets and private operational data excluded.
| KPI Overview | Account Widget |
|---|---|
![]() |
![]() |
| Analytics Charts — Huissiers by Region & Status |
|---|
![]() |
Dashboard statistics: 73 courts (mahakems), 12 regions — demo instance. Charts rendered via Filament widgets with Recharts.
| New Act Form — Date & Type | Act Type Selection |
|---|---|
![]() |
![]() |
| Act Form — Reference Fields |
|---|
![]() |
Act types: Notification, Status Change, Constat/Saisie. Full lifecycle tracking with timestamps and reference numbers.
| Complaint Form — Rich Text | Complaint Status & Urgency |
|---|---|
![]() |
![]() |
Complaint intake with rich text editor, status workflow (pending/in review/resolved), and urgency classification.
| Huissiers List — Search & Filter | Add Huissier — Personal Info |
|---|---|
![]() |
![]() |
| Add Huissier — Address Fields |
|---|
![]() |
On huissier creation, the HuissierObserver auto-provisions a User record with Sanctum credentials — same credentials sync to NOUR mobile via Supabase Auth (shared email identity).
| Add Regional Admin (مسؤول جهوي) |
|---|
![]() |
RBAC with roles: super_admin, regional_admin, huissier. Regional admins manage their own jurisdiction scope.
| 12 Moroccan Regions (الجهات) | Regions — Continued |
|---|---|
![]() |
![]() |
| 73 Courts (المحاكم) | Courts — Continued |
|---|---|
![]() |
![]() |
Full geographic coverage of Morocco's judicial map: all regions and all courts pre-seeded.
┌─────────────────────────────────────────────┐
│ Governance Platform (Laravel) │
│ ┌──────────┐ ┌──────────┐ ┌───────────┐ │
│ │ Filament│ │ Sanctum │ │ HuissierO│ │
│ │ Admin │ │ API │ │ bserver │ │
│ └──────────┘ └────┬─────┘ └─────┬─────┘ │
└───────────────────┼────────────────┼────────┘
│ │
▼ ▼
NOUR Mobile App User provisioning
(Flutter + QRPRUF) (shared credentials)
- HuissierObserver — auto-provisions User on Huissier creation, bridges both apps via shared email identity
- Sanctum API — token-based auth for mobile client
- Filament 3 — full Arabic RTL admin panel (via
APP_LOCALE=ar) - RBAC — policies enforce scope per role (super_admin / regional_admin / huissier)
git clone https://github.com/sanadidari/governance-platform.git
cd governance-platform
composer install
cp .env.example .env
php artisan key:generate
# Configure DB in .env
php artisan migrate --seed
php artisan serveAdmin panel at: http://127.0.0.1:8000/admin/shuffle
| Project | Description |
|---|---|
| NOUR Mobile | Unified judicial mobile app (Flutter) — this platform + QRPruf |
| QRPruf | Zero-trust proof of presence (QR cryptography) |
Built by Samir Chatwiti — Sanadidari SARL · LegalTech · Morocco















