Seeder
Seeder is an admin/developer utility for yStore. It has two independent jobs:
- Generate realistic demo data — customers, products, orders, coupons, gift cards, catalog rules, and shipping/payment methods — from reusable, named profiles that can be run on demand, via a CLI wizard, or on a cron schedule.
- Import real data from a CSV, JSON, or XML file (or a remote URL) into products, entries, categories, or customers, using a saved import profile with column-to-field mapping.
There is no storefront-facing behavior — Seeder only writes data that the store plugin and Craft itself then serve normally to customers.
Key features
- Named, reusable generator profiles covering customers, products (variants, pricing, stock, weight, tier prices), orders, coupons, gift cards, catalog rules, and wishlist items, each with its own purge/reset options.
- Optional cron schedule per profile plus auto-reset so a profile can refresh its own data unattended (staging refresh, demo environments).
- An import wizard (Details → Source → Mapping → Options → Review) for CSV/JSON/XML files or remote URLs, targeting products, entries, categories, or customers, with column detection, row preview, and per-field transformers.
- Import logs with per-row status (imported/updated/skipped/failed) and optional debug tracing.
- Console commands for every generator and import action, so profiles can be run from deploy scripts or scheduled tasks outside of Craft's own cron.
- License activation panel, shared with the rest of the yStore ecosystem.
Requirements
- Craft CMS 5, PHP 8.1+.
- The
yui/craft-plugin(yStore) package, since generator profiles create customers, products, and orders through the store's own services. - Console access to run
php craftcommands for CLI generation, cron runs, and CLI imports.
Installation
Install through Composer, using the credentials granted by your yStore license:
composer require yui/seeder
Then enable Seeder from Settings → Plugins in the Craft control panel and continue with Settings.
Use cases
See Use Cases for building a generator profile, running it from the CP or CLI, scheduling it with cron, and setting up a CSV/JSON/XML import profile.
Developer notes
See Developer / API for the console commands (php craft seeder/...,
php craft seeder-cron/..., php craft seeder-import/...), the CP routes, and the service
classes (profiles, importProfiles, importer, importSource, runLog, importLog) exposed
on the plugin instance.