Download the PHP package offload-project/laravel-waitlist without Composer
On this page you can find all versions of the php package offload-project/laravel-waitlist. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download offload-project/laravel-waitlist
More information about offload-project/laravel-waitlist
Files in offload-project/laravel-waitlist
Package laravel-waitlist
Short Description Manage multiple waitlists in Laravel - perfect for beta programs, product launches, and feature access control
License MIT
Homepage https://github.com/offload-project/laravel-waitlist
Informations about the package laravel-waitlist
Laravel Waitlist
A simple and flexible waitlist package for Laravel applications. Manage multiple waitlists with ease - perfect for beta programs, product launches, feature access, and more.
This package provides the core functionality without imposing any UI or API structure, giving you complete freedom to implement your own controllers, views, and API endpoints.
Features
- Multiple Waitlists - Create and manage as many waitlists as you need
- Simple API - Clean, intuitive interface for managing waitlist entries
- Status Management - Track entries as pending, invited, or rejected
- Email Verification - Optional email verification before inviting users
- Email Notifications - Automatic notifications when users are invited
- Metadata Support - Store custom data with each entry
- Fully Tested - 44 comprehensive tests, 80 assertions
- Type Safe - Full PHPStan level 5 compliance
- Flexible - No opinionated routes or views - use it your way
Requirements
- PHP 8.3+
- Laravel 11/12/13
Installation
Install the package via Composer:
Publish and run the migrations:
Optionally, publish the config file:
Usage
Quick Start (Single Waitlist)
If you only need one waitlist, just start using it - a default waitlist is created automatically:
Multiple Waitlists
Create and manage multiple waitlists for different purposes:
Complete API
Using the Model
You can also work directly with the WaitlistEntry model:
Creating Your Own Controller
Since this package doesn't include controllers, you can create your own to fit your needs:
Creating Your Own Livewire Component
Example Livewire component for a waitlist form:
Customizing the Notification
Publish the config file and change the notification class:
Create your custom notification:
Disabling Auto-Notifications
If you want to send invitations manually:
Then send notifications manually:
Using Metadata
Store custom data with waitlist entries:
Email Verification
Optionally require users to verify their email before they can be invited:
Or via environment variables:
When verification is enabled:
The package provides a verification route at /waitlist/verify/{token} by default. Configure the routes in your config:
Custom Verification Notification
Create your own verification notification:
Configuration
Database Schema
waitlists table
id- Primary keyname- Waitlist nameslug- Unique identifier for referencing the waitlistdescription- Optional descriptionis_active- Whether the waitlist is active (default: true)settings- JSON field for custom settingscreated_atandupdated_at- Laravel timestamps
Indexed fields: slug, is_active
waitlist_entries table
id- Primary keywaitlist_id- Foreign key to the waitlist (nullable for default waitlist)name- User's nameemail- User's email (unique per waitlist)status- Status: pending, invited, or rejectedinvited_at- Timestamp when invitedmetadata- JSON field for custom dataverification_token- Token for email verification (nullable)verified_at- Timestamp when email was verified (nullable)created_atandupdated_at- Laravel timestamps
Indexed fields: status, created_at, verification_token
Unique constraint: ['waitlist_id', 'email'] (same email can join multiple waitlists)
API Reference
Facade Methods
Waitlist Model Methods
WaitlistEntry Model Methods
Testing
Code Quality
Example Use Cases
Multiple Product Launches
Tiered Access Programs
Feature-Specific Waitlists
Regional Launches
Beta Programs
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-waitlist with dependencies
illuminate/support Version ^11.0|^12.0|^13.0
illuminate/database Version ^11.0|^12.0|^13.0