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

    • Action Logger
    • Addresses
    • Algolia
    • Algolia Webshop
    • API
    • Audits
    • 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
    • Enums
    • Excel
    • Facebook
    • Files
    • Filters
    • Financials
    • Forms
    • Frisbo
    • Google
    • Helpers
    • Holidays
    • How-to
    • Image Transformer
    • Impersonate
    • Interactions
    • Inventory
    • IO
    • Localisation
    • Lockable Models
    • Logs
    • Measurement Units
    • Meili Search
    • Meili Search Webshop
    • Menus
    • Migrator
    • Monitored Emails
    • Notifications
    • Packaging Units
    • PDF
    • People
    • Permissions
    • Product Eav
    • Product Lots
    • Products
    • Questionnaires
    • Rememberable
    • Roles
    • Sale Channels
    • Searchable
    • Select
    • Sentry
    • Services
    • Smart Bill
    • Sms Advert
    • Stripe
    • 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

Tasks

LicenseStableDownloadsPHPIssuesMerge Requests

Description

Tasks is Enso's internal task management backend.

The package stores tasks allocated between users, supports reminders and overdue detection, exposes create/edit/table/export endpoints, publishes websocket channels for live task updates and task counters, and sends queued reminder notifications to assignees.

Installation

Install the package:

composer require laravel-enso/tasks

Run the migrations:

php artisan migrate

The package merges config/tasks.php, where you can restrict the roles that may be selected as task assignees.

Features

  • CRUD endpoints for tasks, plus table bootstrap, table data, and Excel export.
  • Visibility rules based on ownership, assignee, and superior roles.
  • Reminder and overdue scopes on the Task model.
  • Queued reminder notifications through TaskNotification.
  • Broadcast channels for per-user task streams and global task updates.
  • Dynamic taskable payload generation through TaskableFactory.

Usage

Task routes are registered under:

  • prefix: api/system/tasks
  • name prefix: system.tasks.
  • middleware: api, auth, core

Key endpoints:

  • GET create
  • POST /
  • GET {task}/edit
  • PATCH {task}
  • DELETE {task}
  • GET initTable
  • GET tableData
  • GET exportExcel
  • GET count
  • GET users

The core model is LaravelEnso\Tasks\Models\Task.

Useful relationships and methods:

  • allocatedTo()
  • remind()
  • overdue(): bool

Useful scopes:

  • visible()
  • pending()
  • completed()
  • overdue()
  • notReminded()

Broadcast channels:

  • tasks.{userId}
  • task-updates

Configuration:

return [
    'roles' => ['*'],
];

Use a narrowed list when only certain roles should be assignable.

API

This package exposes its backend integration through the routes, controllers, services, jobs, and configuration points referenced in the usage examples above.

Consumers should rely on the published config keys, documented route groups, and explicit service classes shown in the examples. Internal helper classes, listeners, casts, and background jobs are implementation details unless the README calls them out as extension points.

Depends On

Required Enso packages:

  • laravel-enso/core ↗
  • laravel-enso/dynamic-methods ↗
  • laravel-enso/forms ↗
  • laravel-enso/helpers ↗
  • laravel-enso/tables ↗

Companion frontend package:

  • @enso-ui/tasks ↗

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: 4/20/2026, 7:34:54 PM
Prev
Tables
Next
Teams