lunarphp/demo-data

Lunar demo data seeder

Maintainers

Package info

github.com/lunarphp/demo-data

pkg:composer/lunarphp/demo-data

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

2.0.0-alpha.2 2026-07-01 17:23 UTC

This package is auto-updated.

Last update: 2026-07-01 17:48:27 UTC


README

Seeds a coherent, reproducible demo store — catalogue, customers, and orders spanning the full order lifecycle — for evaluation, screenshots, and admin verification. Data only; there is no storefront UI.

This is a development/showcase tool, not part of Lunar's public contract surface. Its generators and seeders may change shape between versions without a Rector rule or upgrade path.

Install

It is a dev-only dependency — install it under require-dev so a production composer install --no-dev omits it entirely:

composer require --dev lunarphp/demo-data

Usage

php artisan lunar:demo-data            # seed at the default scale
php artisan lunar:demo-data --scale=medium
php artisan lunar:demo-data --fresh    # wipe demo-owned tables, then seed
php artisan lunar:demo-data --force    # required to run in a production environment

The command refuses to run in production without --force, mirroring Laravel's own migrate:fresh / db:wipe. Without --fresh it is a no-op once the store is seeded; use --fresh to wipe the demo-owned tables and rebuild.

Seeding is reproducible at the structural level — the same scale always yields the same catalogue, the same order coverage, and the same counts (faker is seeded from a fixed value in config/demo-data.php). Cosmetic faker output (customer names, addresses) is best-effort: the framework draws from the global RNG stream mid-seed, so those values are not byte-identical between runs.

DemoDataSeeder is also callable from a host DatabaseSeeder:

$this->call(\Lunar\DemoData\Database\Seeders\DemoDataSeeder::class);

Configuration

Publish the config to tune the faker seed, per-scale volumes, currencies, and the media disk:

php artisan vendor:publish --tag=lunar.demo-data