Filebox - Laravel and Inertia Cloud Storage Template
newA cloud storage app on Laravel and Inertia: folders, uploads, share inheritance, revisions and the bin all persist to Eloquent tables, behind real Fortify sign-in.
What is included
- Six tables under the drive. Nodes, grants, teams and revisions are Eloquent rows, so what you create outlives the process.
- Inheritance is a server answer. ShareResolver walks a file's ancestor folders nearest first, dedupes by person, and tags every borrowed grant with the folder it came from. The owner badge does not travel.
- A borrowed grant will not save. inheritedFrom is prohibited on the write, because storing one would quietly detach the file from the folder that shared it.
- Sign-in that signs you in. Fortify runs login, reset, verification, password confirmation, two-factor and passkeys, and every drive route sits behind auth and verified.
- Every change leaves a revision. Renames, moves, restores and access edits append to drive_versions. Typing a description folds into one entry rather than forty.
- Restore remembers the folder. Trashing detaches a whole subtree and stores its parent, so restore puts it back, or at the root when that folder is gone too.
- Uploads report bytes sent. The one endpoint on XHR rather than Inertia, because nothing else can read upload progress.
- A folder cannot move into itself. NotWithinNode fails the PATCH.
Who it is for
- Laravel teams told to build a drive The schema, the controllers and the share resolver are already written.
- An internal file store behind a login Fortify, two-factor and passkeys arrive wired, and public sign-up is closed by default.
- Moving off a hosted drive DRIVE_DISK points the same upload code at local storage or S3.