daycode / fictive
A skeleton repository for my packages
Fund package maintenance!
dayCod
Patreon
www.paypal.com/paypalme/wirandraalaya
Requires
- php: ^8.3.0
- caseyamcl/guzzle_retry_middleware: ^2.12
Requires (Dev)
- laravel/pint: ^1.18.1
- orchestra/testbench: ^9.0
- peckphp/peck: ^0.1.1
- pestphp/pest: ^3.5.1
- pestphp/pest-plugin-type-coverage: ^3.1
- phpstan/phpstan: ^1.12.7
- rector/rector: ^1.2.8
- symfony/var-dumper: ^7.1.6
This package is auto-updated.
Last update: 2025-08-01 03:50:33 UTC
README
Fictive is a Laravel package designed to generate realistic dummy data for testing large-scale systems. Unlike traditional data generators, Fictive creates data that feels real, helping QA testers avoid confusion and enabling more effective testing scenarios.
Features
- Generate millions of realistic records for testing
- Schema-based data generation
- Data validation and normalization
- Caching to avoid duplicate data
- Simple integration with Laravel
How It Works
- Setup and initialize Fictive functions
- Parse your schema
- Call the desired method to generate data
- Validate and normalize the result
- Cache the result for future use
- Return the generated data as a string
Installation
Usage Example
You can use Fictive in your services, factories, or seeders. Example:
use Daycode\Fictive\Fictive; $handlePersons = app(Fictive::class) ->count(1) ->handlePersons(); // Person Service Example $handlePersons(function ($person) { User::create([ 'name' => $person->fullName(), 'email' => $person->email(), 'email_verified_at' => now(), 'password' => bcrypt('password'), 'phone_number' => $person->phoneNumber(), 'religion' => $person->religion(), 'hobby' => $person->hobby(), 'blood_group' => $person->bloodGroup(), 'job_description' => $person->jobTitle(), ]); });
Refer to the documentation in the docs/
folder for more advanced usage and schema definitions.
Project Structure
src/
— Main package source codeDTO/
— Data Transfer ObjectsExceptions/
— Custom exceptionsLLM/
— Language Model ModulesServices/
— Service classes
config/
— Package configurationtests/
— Unit and feature testsdocs/
— Documentation and examples
Available Data Classes
Development & Contribution
Before pushing to the main branch, please run:
./vendor/bin/rector
./vendor/bin/pint
composer test
Feel free to open issues or pull requests. See CONTRIBUTING.md
for more details.
License
This package is open-sourced software licensed under the MIT license.
Tips
Keep it simple, and don't overthink it.