Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Model Fields Laravel Package

watheqalshowaiter/model-fields

Easily add custom fields to Laravel Eloquent models with watheqalshowaiter/model-fields. A simple trait stores dynamic, validated attributes as JSON, letting you extend models without extra migrations or schema changes.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Greenfield scaffolding speed vs. hand-written boilerplate: This package generates migrations, model $fillable/casts, form-request validation rules, API resources, and factories by introspecting an existing database schema. That directly informs the build-vs-generate decision for new services layered onto a legacy or DBA-owned schema — a common enterprise pattern where the database is the contract and Laravel models must shadow it.
  • Legacy migration / modernization roadmap: For teams moving a PHP or SQL-first application onto Laravel, the package compresses the "define models and validation for 60 tables" phase from days to minutes. Useful input when scoping a re-platforming timeline or deciding whether to modernize in place versus rewrite.
  • Contract-first workflows with external DBA teams: If schema changes originate outside the Laravel codebase (DBA team, migration tool, another service), schema-derived codegen keeps Laravel artifacts in sync, reducing a class of "column added, validation never updated" defects. This is a concrete argument in architecture reviews about who owns the schema.
  • Developer-experience and onboarding investment: A single Artisan command that produces working code shortens ramp-up for engineers new to a large domain model. Relevant when weighing internal tooling spend against documentation and pair-programming alternatives.
  • Feature-level judgement calls (build vs. buy): The package is narrow and single-purpose. Adopting it is a low-cost buy; the real decision is whether to standardize on it across teams or treat it as an individual convenience. Also relevant: whether you need the generated output as a one-time bootstrap or as a recurring CI-enforced step — the latter implies a much deeper commitment.

Positioning note for roadmap discussions: the package is a developer productivity tool, not runtime infrastructure. It touches the build/authoring workflow, not request handling, so it carries low production risk and low operational ownership burden — but it also delivers no end-user-facing capability, so it should be justified against engineering time, not product outcomes.

When to Consider This Package

Adopt when most of the following hold:

  • You have an existing, populated database and want Laravel models/validation to reflect it. The generator's value is proportional to schema size and to how far the schema is from the current code.
  • Schema is the source of truth, owned by DBAs, a legacy app, or a migration tool outside Laravel. Codegen from the live schema is exactly the right direction of flow.
  • You are bootstrapping a new Laravel service against an inherited schema, or onboarding a team onto a large unfamiliar domain.
  • You want a one-time scaffold that engineers then review and own. Generated migrations and factories are starting points, not a maintenance contract.
  • You are on a supported Laravel version. As of 3.2.2 the package advertises Laravel 13 support, which signals active maintenance and an intent to track the framework's release cadence — a meaningful signal for a package that hooks into schema introspection and Artisan.

Look elsewhere, or plan to hand-roll, when:

  • Your database is empty or Laravel owns the schema. If migrations are authored in Laravel and are the source of truth, generating migrations from the database inverts the workflow and creates drift.
  • You need recurring, CI-enforced regeneration. Schema-diff codegen is viable, but it demands discipline around review and formatting and can churn diffs. If you cannot commit to that process, treat the tool as a one-shot bootstrap only.
  • Schema introspection is constrained. Views, enums, spatial types, polymorphic relations, composite keys, and heavy use of database-specific types are the usual weak spots in any introspection-based generator. Validate against your actual schema before committing.
  • Custom validation semantics matter. Generated rules are mechanical (type, length, nullability); business rules, cross-field constraints, and authorization still need humans.
  • You are on an older Laravel version and cannot upgrade — check the constraint range before assuming compatibility, since framework support is the axis this release just moved.
  • Multi-tenant or sharded databases where a single connection does not represent the full picture; introspection against one connection may produce incomplete or misleading output.

Assessment of 3.2.2 specifically: this is a compatibility release adding Laravel 13 support, with no breaking changes, deprecations, or new generator capabilities. It is a positive maintenance signal — the maintainer is tracking framework releases promptly, which matters for a package coupled to Laravel internals — but it does not change the adoption calculus. Upgrade is low-risk; there is no functional reason to accelerate a migration to Laravel 13 on account of this package alone.

How to Pitch It (Stakeholders)

For executives (one paragraph): This is a small, free, open-source developer tool that writes Laravel code automatically from an existing database. It does not touch production runtime, adds no infrastructure, and carries no licensing cost or vendor lock-in — it can be removed at any time with no customer impact. Its value is engineering time: on projects that layer Laravel onto an existing database, it can compress days of repetitive model-and-validation authoring into minutes and reduce a common class of bugs where the database changes but the application code does not. The latest release (3.2.2) simply adds support for the newest Laravel version, which tells us the tool is actively maintained. Recommendation: allow individual teams to use it as a scaffolding aid; do not build a process dependency on it without a deliberate decision.

For engineering leads: Treat it as a bootstrap accelerator, not infrastructure. Run it against a real schema branch, review the generated migrations, factories, and form requests as you would a junior engineer's pull request, and then own the output. Budget an hour of evaluation against your most awkward tables — enums, views, composite keys, custom types — because that is where introspection-based generators typically fall short. Because generated validation rules are mechanical, plan for a human pass to add business rules and authorization. Pin the version and note the Laravel constraint in your upgrade runbook; 3.2.2 is additive and safe, but the package sits close enough to framework internals that a major Laravel upgrade should include a check against it. If you intend to regenerate on every schema change, agree up front on who reviews the diffs and how formatting churn is suppressed — otherwise the tool quietly becomes a source of noisy pull requests.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core