Search by

laranail / waitlist-kit

simtabi

Waitlists, coming-soon and early-access pages for Laravel: lead capture and conversion, a Blade + Alpine.js backend, and themes as packages.

v0.1.0 2026-11-12 01:37 UTC

This package is auto-updated.

Last update: 2026-11-12 01:42:31 UTC


README

Tests Static analysis License: MIT

Three badges, not four: the laranail family resolves through its git repositories, not Packagist, so there is no registry version to show (see Install).

Waitlists, coming-soon and early-access pages for Laravel: lead capture and conversion, a Blade + Alpine.js backend, and themes as packages.

Requires PHP ^8.5 on Laravel ^13. Pre-release: campaigns take sign-ups on a themed page (two themes ship; theme packages add more), thank each new address once and forward it to integrations, all run from a Blade + Alpine.js backend.

Install

The laranail family resolves through git VCS repositories. Add them, then require the package:

composer config repositories.waitlist-kit vcs https://github.com/laranail/waitlist-kit
composer config repositories.console vcs https://github.com/laranail/console
composer config repositories.package-tools vcs https://github.com/laranail/package-tools
composer require laranail/waitlist-kit

Quick start guide and usage

Getting started

Publish the config, run the migrations and check the install in one command:

php artisan laranail::waitlist-kit.install --migrate

It creates eight tables under the laranail_waitlist_kit_ prefix and ends by running the doctor, which exits non-zero on any problem. Choose how many campaigns the install may run with WAITLIST_KIT_CAMPAIGNS (single, limited or multi) before you create one.

Usage

Create a campaign through the action, which holds the install to its campaign limit:

use Simtabi\Laranail\WaitlistKit\Actions\CreateCampaign;
use Simtabi\Laranail\WaitlistKit\Enums\CampaignType;

$campaign = app(CreateCampaign::class)->handle('Launch list', 'launch', CampaignType::Waitlist, ['en', 'es']);

$campaign->subscribers()->create(['email' => 'dana@example.com']);

Make it live and its page takes sign-ups at /waitlist/launch:

$campaign->update(['status' => CampaignStatus::Live]);

Check an install at any time, for example as a deploy step:

php artisan laranail::waitlist-kit.doctor

Getting started walks through it; everything else is in the Documentation index.

Documentation

Hosted at opensource.simtabi.com/documentation/laranail/waitlist-kit.

Guides

  • Installation — requirements, repositories, supported databases
  • Getting started — install, migrate, a first campaign and subscriber
  • Configuration — every key and environment variable
  • Architecture — the layers, and why the kit is built this way
  • Accessibility — what is guaranteed, how it is tested, and the screen-reader pass
  • Release — versions, tags and upgrading

Reference

  • Models — campaigns, subscribers, blocks, funnel events, integrations
  • Sign-ups — routes, the request, the guards and the answer
  • Mail — the thank-you, once, in the sign-up's language
  • Backend — signing in, abilities, every screen, settings, accessibility
  • Themes — two kit themes, theme packages, view fallback, settings as CSS, prebuilt assets
  • Pages — campaign types and statuses, search and link previews, hreflang, sitemap
  • Conversion — double opt-in, status page, referrals, invites, conversions, unsubscribe, funnel
  • Contact — the headless contact form: endpoint, component and rules
  • Legal pages — privacy and terms, seeded as drafts, served once published
  • Integrations — the app and brevo drivers, queued and retried
  • Morph map — *able columns and the namespaced aliases
  • Seeders and factories — the starter and demo seeders, a factory per model
  • Campaign limits — single, limited, multi, and CreateCampaign
  • Commands — install, doctor, eject, export, forget
  • Builders — the kit from code: fluent builders, acting as a user
  • REST API — public and manage endpoints, Sanctum, token abilities, limits
  • Authorization — abilities, policies and the actor
  • Events, listeners and alerts — 12 events, the kit's listeners, alert notifications

Recipes

Contributing and security

See CONTRIBUTING.md. Report vulnerabilities privately as SECURITY.md describes (security@simtabi.com); participation follows the Code of Conduct.

License

MIT © Simtabi LLC. See LICENSE.