News

Laravel Factories Reloaded

Published
Laravel Factories Reloaded image

Laravel Factories Reloaded is a package by Christoph Rumpel that generates class-based model factories that you can use instead of the factory files Laravel provides.

Here are the main benefits of this package as provided in the readme:

  • use the features you already love from Laravel factories (create, make, times, states)
  • automatically create new class factories for specific or All your models
  • automatically import defined default data and states from your Laravel factories
  • and many more…

Here are some examples of how you might use the class-based factories provided by this package:

// Create a new record in the database
$user = UserFactory::new()->create();
 
// Make a new model without peristing to the database
$user = UserFactory::new()->make();
 
// Use a factory state
$recipe = UserFactory::new()
->active()
->create();
 
// Relations
$recipe = RecipeFactory::new()
->with(Group::class, 'group')
->with(Ingredient::class, 'ingredients')
->with(Ingredient::class, 'ingredients', 3)
->create();

You might be asking, “what is the benefit of using class-based factories?” The project’s readme mentions the following benefits of using this package:

  • They give you much more flexibility on how to create your model instances.
  • They make your tests much cleaner because you can hide complex preparations inside the class.
  • They provide IDE auto-completion, which you do not have with Laravel factories.

Learn More

You can learn more about this package, get full installation instructions, and view the source code on GitHub at christophrumpel/laravel-factories-reloaded.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Filed in

Sponsored

acquaintsoft logo
Acquaint Softtech

Hire Laravel developers with AI expertise at $20/hr. Get started in 48 hours.

Visit Acquaint Softtech

The latest

View all →
Securing Filament plugins with Plumb image

Securing Filament plugins with Plumb

Read article
LayaPHP: Self-Hosted Text Classification for PHP and Laravel image

LayaPHP: Self-Hosted Text Classification for PHP and Laravel

Read article
WhenMounted and BigInt Props in Inertia.js v3.8 image

WhenMounted and BigInt Props in Inertia.js v3.8

Read article
Postcodes for Laravel: GB Postcode Lookup and Geography Data image

Postcodes for Laravel: GB Postcode Lookup and Geography Data

Read article
Laravel 14 Adds a defaults() Method to Eloquent Models image

Laravel 14 Adds a defaults() Method to Eloquent Models

Read article
Laravel AI SDK and Laravel MCP Security Fixes: Update Now image

Laravel AI SDK and Laravel MCP Security Fixes: Update Now

Read article