How vroa74/laravel-tools-ai works
Tools AI is a private, single-administrator catalog for AI resources. The main workflow is to sign in, browse or search the catalog, inspect a resource, and optionally produce a private PDF with a QR code; the administrator also manages categories, platforms, and resources through MoonShine. The graph preserves these documented stages and the resource validation/model layer. Some routing and Livewire implementation files were not sampled, so those relationships are documented or left unverified rather than inferred from imports alone.
Main entry points: Resource.php Resource model · admin-dashboard.blade.php Admin screens · ResourceResource.php Resource CRUD · ResourcePdf.php PDF and QR
Components 20
Access and privacy
- Sign-in
app/Http/Controllers/AuthController.php - Private responses
app/Http/Middleware/PrivateResponse.php - Admin guard
app/Http/Middleware/EnsurePersonalAdmin.php
Catalog experience
- Catalog browser
resources/views/livewire/resource-catalog.blade.php - Resource detail
resources/views/livewire/resource-show.blade.php
Administration
- Admin screens
resources/views/livewire/admin-dashboard.blade.php - Resource CRUD
app/MoonShine/Resources/ResourceResource.php - Resource form
app/MoonShine/Pages/ResourceFormPage.php - Category CRUD
app/MoonShine/Resources/CategoryResource.php - Platform CRUD
app/MoonShine/Resources/AiPlatformResource.php
Resource domain
- Resource model
app/Models/Resource.php - Resource types
app/Enums/ResourceType.php - Resource rules
app/Support/ResourceRules.php - Category model
app/Models/Category.php - Platform model
app/Models/AiPlatform.php - Admin identity
app/Models/User.php
Resource export
- PDF endpoint
app/Http/Controllers/ResourcePdfController.php - PDF and QR
app/Services/ResourcePdf.php - PDF template
resources/views/pdf/resource.blade.php
Other components
- Administrator
Connections 23
- Administrator → Sign-in: signs in
- Administrator → Catalog browser: browses
- Catalog browser → Resource model: reads catalog
resources/views/livewire/resource-catalog.blade.php - Administrator → Resource detail: opens resource
- Administrator → Admin screens: manages catalog
- Admin screens → Resource CRUD: opens CRUD
- Resource CRUD → Resource model: manages
app/MoonShine/Resources/ResourceResource.php - Resource CRUD → Resource form: uses form
app/MoonShine/Resources/ResourceResource.php - Admin screens → Category CRUD: manages categories
- Category CRUD → Category model: manages
app/MoonShine/Resources/CategoryResource.php - Admin screens → Platform CRUD: manages platforms
- Platform CRUD → Platform model: manages
app/MoonShine/Resources/AiPlatformResource.php - Resource model → Resource rules: validates with
app/Models/Resource.php - Resource model → Resource types: casts type
app/Models/Resource.php - Resource model → Category model: belongs to
app/Models/Resource.php - Resource model → Platform model: associates platforms
app/Models/Resource.php - Admin identity → Resource model: owns resources
app/Models/User.php - Administrator → PDF endpoint: requests PDF
- PDF endpoint → PDF and QR: generates
app/Http/Controllers/ResourcePdfController.php - PDF and QR → Resource model: loads resource
app/Services/ResourcePdf.php - PDF and QR → PDF template: renders
- Admin guard → Admin identity: checks identity
- Administrator → Private responses: uses private session