Download the PHP package a2zwebltd/laravel-email-sequences without Composer

On this page you can find all versions of the php package a2zwebltd/laravel-email-sequences. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-email-sequences

Laravel Email Sequences

Packagist Version Downloads PHP Laravel

A portable Laravel drip / lifecycle email engine. Enrol users into time-delayed email sequences (onboarding, trial nurture, win-back, feedback), deliver them on a cron, and stop a user's sequence the moment they convert — all driven by config and pluggable eligibility rules, with ready-made Nova admin resources.

Designed to drop into any Laravel app while leaving the host in control of its user model, eligibility rules, branding and notifications.

Requirements

Installation

Add the trait to your User model:

That's it — with auto_enroll on (the default), every newly registered user is enrolled into all sequences and delivery runs hourly.

How it works

  1. Configure your sequences in config/email-sequences.php (code, delay, subject, view). They seed the email_sequences table on the first migrate; after that, run php artisan email-sequences:sync whenever you change them.
  2. Enrolment — new users are auto-enrolled (or call $user->enrollInEmailSequences() yourself). Each sequence is scheduled relative to the user's registration date.
  3. Delivery — the emails:deliver-sequences command (scheduled hourly) sends every due message, fires SequenceDelivered, and marks it sent.
  4. Eligibility — should_enroll gates who gets enrolled; should_continue stops a user's remaining deliveries (e.g. once they upgrade to a paid plan). A sequence entry may also define its own should_send gate — when it returns false at delivery time, that single message is skipped (marked sent, never retried) while the rest of the user's sequence continues (e.g. skip a "make your first call" nudge for users who already called the API).

  5. Language — if the user model implements Illuminate\Contracts\Translation\HasLocalePreference and preferredLocale() returns a non-empty value, the email is sent in that locale: the subject goes through __() (translate it in lang/{locale}.json with the configured English subject as the key; :name still works) and the view renders in that locale, so __() calls inside it are translated too. Other users get the app locale.

Use emails:backfill-enrollments to enrol users that pre-date installation. It only picks up users with no deliveries at all, and schedules from each user's created_at, so long-standing users get every overdue email on the next run.

Changing sequences after the first migrate

Enrolment reads name and days_delay from the email_sequences table, not from config. After adding, renaming, re-timing or removing a sequence, push the config into the table:

The command is idempotent: it matches rows by sequence_code, updates only the oldest live row per code (the one enrolment uses), revives a soft-deleted row instead of inserting a new one, and never creates duplicates. By default it leaves already-scheduled deliveries alone; add --reschedule to shift pending deliveries by the change in days_delay. Existing users are not enrolled into a newly added sequence; schedule those deliveries yourself if you want them.

Configuration

See config/email-sequences.php:

Key Purpose
user_model The model enrolled into sequences
sequences The sequence set: code => [name, days_delay, subject, view, should_send?, reply_to?]
sequences.*.should_send fn ($user) => bool — skip just this message when false (invokable class-string recommended so the config stays cacheable)
sequences.*.reply_to Reply-To address for this sequence's email (overrides mail.reply_to)
mail.reply_to Reply-To address for every sequence email (env EMAIL_SEQUENCES_REPLY_TO, default null = none)
auto_enroll Enrol every newly-created user automatically
should_enroll fn ($user) => bool — gate enrolment
should_continue fn ($user) => bool — stop a user's sequence when false
schedule.deliver / schedule.cron Self-scheduling of the delivery command
schedule.without_overlapping Skip a tick while the previous delivery run is still going (default true)
schedule.on_one_server Run the delivery on one server only; needs a cache store with atomic locks (default false)
nova.group / nova.user_resource Nova menu group and User resource for relations

Events

Event When
SequenceDelivered A sequence email was delivered (in-app notifications, analytics)

Commands

Command Purpose
emails:deliver-sequences Deliver all due sequence emails (self-scheduled hourly)
emails:backfill-enrollments Enrol users that have no deliveries yet
email-sequences:sync Sync email_sequences rows from config (--prune, --reschedule, --dry-run)

AI agents (Laravel Boost)

The package ships Laravel Boost resources: a short guideline that is always loaded, and an email-sequences-development skill loaded on demand. Boost 2 or newer is required. In the host app:

Select a2zwebltd/laravel-email-sequences when prompted.

Testing

License

MIT — see LICENSE file.


All versions of laravel-email-sequences with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
laravel/framework Version ^11.0|^12.0|^13.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package a2zwebltd/laravel-email-sequences contains the following files

Loading the files please wait ...