code-rhapsodie/ezautosave-bundle
EzPlatformAdminUiBundle (Symfony bundle) makes Laravel adoption non-trivial.localStorage (or Laravel Sanctum for server-side sync).drafts table.| Step | Action | Tools/Alternatives |
|---|---|---|
| 1 | Assess Need | Confirm if autosave is a must-have or if Laravel’s built-in form sessions suffice. |
| 2 | Prototype | Build a minimal autosave using Laravel + Livewire (no package dependency). Example: Livewire Autosave. |
| 3 | Storage Layer | Replace browser storage with Laravel’s cache() or a drafts table. |
| 4 | Conflict Resolution | Implement versioning (e.g., updated_at timestamps) or optimistic locking. |
| 5 | UI Integration | Hook into Laravel’s form lifecycle (e.g., Form::save() events) or use Alpine.js for lightweight autosave. |
EzAutosaveBundle class and Twig templates are eZPlatform-specific.EzPlatformAdminUiBundle → Laravel’s Form component).session()->put() or DB).setInterval for saves, modal for restore).auth()->user()->id).| Scenario | Impact | Mitigation |
|---|---|---|
| Browser Crash | Lost autosave data (no server backup). | Implement server-side draft storage. |
| Concurrent Edits | Overwrite conflicts between users/tabs. | Add versioning or last-write-wins logic. |
| Storage Quota Exceeded | Autosave fails silently. | Fallback to server-side cache or DB. |
| Laravel Cache Cleared | Drafts lost if using session() storage. |
Use a dedicated drafts table with user FK. |
| eZPlatform Deprecation | Bundle breaks if Ibexa CMS changes. | Abstract away eZ-specific logic. |
How can I help you explore Laravel packages today?