Download the PHP package a2zwebltd/laravel-newsletter without Composer

On this page you can find all versions of the php package a2zwebltd/laravel-newsletter. 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-newsletter

Laravel Newsletter

Packagist Version Downloads PHP Laravel

A portable Laravel newsletter / broadcast-mailing engine. Admin-authored mailings are delivered to your registered users and anonymous subscribers through an approval → schedule → send workflow, with per-recipient delivery tracking, a double opt-in subscribe / verify / unsubscribe flow, queued sending with rate limiting, customizable mail templates, and ready-made Nova admin resources.

Designed to drop into any Laravel app with minimal wiring while staying fully customisable — the host application keeps control of its user model, audience rules, branding and notifications.

Requirements

Installation

Add the trait to your User model so it can receive mailings:

Register the sender settings class with spatie/laravel-settings (the package auto-discovers it, but you can also add it explicitly in config/settings.php):

How it works

  1. Author a Mailing in Nova (title, markdown content, optional CTA, template).
  2. Approve it — recipients are generated from the configured audience (eligible users + verified subscribers) and MailingApproved fires.
  3. Send now or Schedule — a SendMailingJob is queued per recipient, rate-limited via the mailings limiter (newsletter.per_minute).
  4. On delivery, MailingDelivered fires so you can mirror the mailing into an in-app inbox, analytics, etc.

Anonymous visitors subscribe through newsletter.subscribe, confirm via a tokenised verification link, and can unsubscribe at any time. A standards compliant List-Unsubscribe header is added to every mailing.

Configuration

See config/newsletter.php. Highlights:

Key Purpose
user_model Your application's user model
per_minute Send-rate limit (drives the mailings limiter)
email_view_prefix View path for mailing bodies — point at your own branded templates
inline_css_path Absolute path to a compiled CSS file inlined into every mailing (null = no inlining). See Email CSS inlining
audience.users_query Closure scoping eligible registered users
audience.type_scopes Per-mailing-type audience refinements
callbacks.* Hooks for existing-user subscribe / unsubscribe / uuid lookup
short_url.enabled Auto-shorten CTA links when ashallendesign/short-url is installed
nova.group / nova.user_resource Nova menu group and the User resource used for relations
routes.* Toggle/route prefix, subscribe middleware, captcha rule

Email CSS inlining (optional)

The bundled templates are already self-contained — every element carries inline style attributes — so they render correctly with no extra CSS and inline_css_path left at its default null. You only need this feature if you ship custom templates that style elements via CSS classes (e.g. a markdown body whose <p>/<h1>/<code> come from a class rule), since most email clients strip <style>/<link>.

To enable it, point inline_css_path (or the NEWSLETTER_INLINE_CSS_PATH env var) at the absolute path of a CSS file; its rules are inlined onto matching elements at send time:

A missing file silently disables inlining — it never throws — so a broken or skipped build degrades to plain templates rather than failing the queue job.

⚠️ Do NOT point this at raw Tailwind v4 output. Tailwind v4 compiles utilities and @apply into @layer rules full of CSS custom properties (padding: calc(var(--spacing) * 6)) and oklch() colors. Those references resolve from :root/@theme, which email clients strip — so once inlined onto an element they collapse to nothing (lost padding, fonts, colors). The inliner needs plain, literal CSS: explicit px/% and hex/rgb colors, no var(), no oklch(), no @layer/@apply. Hand-write the email stylesheet (or post-process Tailwind output to literal values) and build it before the app serves — it is host-specific, so the package does not ship it. A minimal example:

Events

Event When
MailingSaved A mailing is saved (CTA shortening, cache busting)
MailingApproved A mailing is approved and recipients generated (SEO/IndexNow)
MailingDelivered An email was delivered to a recipient (in-app notifications)

Routes

Method URI Name
GET /newsletters newsletters
GET /newsletter_form newsletters.form
GET /newsletters/{slug} newsletters.item
GET /mailing/{slug} mailing
POST /newsletter/subscribe newsletter.subscribe
GET /newsletter/verify/{token} newsletter.verify
GET /unsubscribe/{uuid} unsubscribe.show
POST /unsubscribe/{uuid} unsubscribe.confirm

The archive group can be disabled (newsletter.routes.archive_enabled) if your app renders its own newsletter pages.

Cron

The package self-registers the scheduled-send command. To run it yourself instead, disable newsletter.schedule.send_scheduled and add:

Testing

License

MIT — see LICENSE file.


All versions of laravel-newsletter with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
laravel/framework Version ^11.0|^12.0|^13.0
cviebrock/eloquent-sluggable Version ^11.0|^12.0
dyrynda/laravel-model-uuid Version ^8.0
spatie/laravel-settings Version ^3.0
tijsverkoyen/css-to-inline-styles Version ^2.2
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-newsletter contains the following files

Loading the files please wait ...