Laravel EnsoLaravel Enso
Guide
Back End
Front End
GitHub
Guide
Back End
Front End
GitHub
  • Back End

    • Action Logger
    • Addresses
    • Algolia
    • Algolia Webshop
    • API
    • Audit
    • Avatars
    • Cache Chain
    • Calendar
    • Cargo Partner
    • Categories
    • Charts
    • CI/CD
    • Cli
    • CNP Validator
    • Comments
    • Commercial
    • Companies
    • Core
    • Countries
    • Currencies
    • Data Export
    • Data Import
    • Discounts
    • Documents
    • Dynamic Methods
    • EAV
    • Emag
    • Emag Checker
    • Enums
    • Excel
    • Facebook
    • Files
    • Filters
    • Financials
    • Forms
    • Frisbo
    • Google
    • Helpers
    • Holidays
    • How-to
    • Image Transformer
    • Impersonate
    • Interactions
    • Inventory
    • IO
    • Localisation
    • Lockable Models
    • Logs
    • Mails
    • Measurement Units
    • Meili Search
    • Meili Search Webshop
    • Menus
    • Migrator
    • Monitored Emails
    • Notifications
    • Packaging Units
    • PDF
    • People
    • Permissions
    • Product Eav
    • Product Lots
    • Products
    • Projects
    • Questionnaires
    • Rememberable
    • Roles
    • Sale Channels
    • Searchable
    • Select
    • Sentry
    • Services
    • Smart Bill
    • Sms Advert
    • Stripe
    • Sunrise Sunset
    • System Notifications
    • Tables
    • Tasks
    • Teams
    • Ticketing
    • Track Who
    • Tutorials
    • Typesense
    • Typesense Webshop
    • Unit Conversion
    • Upgrade
    • UPS
    • User Groups
    • Users
    • Versions
    • Virtual Call Center
    • Vouchers
    • Webshop
    • Webshop Commercial

Documents

LicenseStableDownloadsPHPIssuesMerge Requests

Description

Documents is a Laravel Enso package designed for advanced document management. It allows administrators to define document categories, types, and custom fields, providing a structured way to attach files to people (profiles).

The package integrates with Enso's file management system and includes support for data imports, making it easy to seed or migrate document structures and records.

Installation

Install the package:

composer require laravel-enso/documents

Run the package migrations:

php artisan migrate

Features

  • Document Type Administration: Full CRUD for managing document categories and types.
  • Custom Fields: Define specific fields for each document type to capture additional metadata.
  • Profile Integration: Link documents directly to Person models (profiles).
  • File Management: Leverages laravel-enso/files for secure and efficient file storage.
  • Data Import Support: Includes importers for document types and fields.
  • Table Integration: Ships with table builders for document browsing and administration.

Usage

Models

  • LaravelEnso\Documents\Models\Document: The main model representing an attached document.
  • LaravelEnso\Documents\Models\DocumentType: Defines the structure and properties of a document type.
  • LaravelEnso\Documents\Models\DocumentTypeCategory: Groups document types for better organization.
  • LaravelEnso\Documents\Models\DocumentTypeField: Custom fields associated with a document type.

Enums

  • LaravelEnso\Documents\Enums\Field: Defines the available types for document custom fields (Numeric, Data, Checkbox, String, Select).

Relationships

A Document belongs to a Person (profile), a DocumentType, and a File.

$document->person;
$document->type;
$document->file;

API

Routes

All package routes are registered under:

  • prefix: api/
  • middleware: api, auth, core

Document Types Administration

  • GET /api/administration/documentTypes - Table data
  • GET /api/administration/documentTypes/create - Create form
  • POST /api/administration/documentTypes - Store new type
  • GET /api/administration/documentTypes/{documentType}/edit - Edit form
  • PATCH /api/administration/documentTypes/{documentType} - Update type
  • DELETE /api/administration/documentTypes/{documentType} - Delete type

Documents

  • GET /api/documents/initTable - Initialize documents table
  • GET /api/documents/tableData - Fetch documents data
  • GET /api/documents/exportExcel - Export documents to Excel
  • GET /api/documents/options - Selectable document options

Depends On

Required Enso packages:

  • laravel-enso/core
  • laravel-enso/files
  • laravel-enso/people
  • laravel-enso/data-import
  • laravel-enso/tables
  • laravel-enso/track-who

Contributions

are welcome. Pull requests are great, but issues are good too.

Thank you to all the people who already contributed to Enso!

Edit this page on GitHub
Last Updated: 5/14/2026, 8:04:52 AM
Prev
Discounts
Next
Dynamic Methods