National platform for managing the bailiff profession in Morocco, built for the National Council of Bailiffs of Justice. Part of the NOUR unified judicial ecosystem.
π Live Portal Β· NOUR Mobile App Β· WITI Ecosystem
This platform provides the institutional back-office for huissiers de justice (judicial officers) across Morocco's 12 regions and 73 courts. It was built following a convention between Sanadidari SARL and the Conseil National des Huissiers de Justice du Maroc.
Alongside the platform, a Sanctum API automatically provisions credentials for the NOUR mobile app β so every registered huissier gets simultaneous access to both the institutional dashboard and the field certification app (zero-trust proof of presence via QR cryptography).
Stack: Laravel 12 Β· Filament 3 Β· MySQL Β· Sanctum Β· Arabic RTL UI
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















