treestoneit/text-wrap
A PHP text-wrapping utility for Laravel that breaks long strings into fixed-width lines. Wrap plain text or HTML safely, preserve whole words, and control line length for emails, reports, consoles, and any output where clean, readable formatting matters.
displayUsing() callback or a small custom field generated with php artisan nova:field. Adding an archived dependency to solve a CSS-level concern is a worse trade than owning ~30 lines of code.Text subclass, a service provider, and a compiled Vue asset. These are different products with different buyers. A PM who scopes off the description will budget the wrong work. Verify against src/ and composer.json before any ticket is written.Nova::script()/Nova::style() registration — reading the source is cheaper and safer than installing it.Consider it only if all of the following hold:
Look elsewhere — or build — if any of these are true:
laravel/nova constraint.Sequencing if we pursue the behavior: run a ≤1-day spike with stock Text/Textarea plus a CSS override in our Nova theme. If that passes, close the ticket. If it fails, build the field in-repo via php artisan nova:field (1–2 engineer-days including tests) and register it in the shared Nova field kit. Contingency adoption — only if leadership mandates reuse — means forking into a Composer path repository, rebuilding the Vue component against our installed Nova toolchain, grepping the JS for v-html/innerHTML (stored-XSS risk inside the admin panel), and adding a CI smoke test.
To executives: This is a 10-star, archived Laravel Nova field from 2018 with zero dependents and no releases in seven years. Its function is to render long text with wrapping in admin screens — a CSS concern. It is not a strategic asset, not a market signal, and not a build-vs-buy decision worth escalating. We should not add it to our dependency surface: we'd inherit a 2018 Vue 2 component on a paid, closed-source host framework, with no upstream, no security contact, and no community of scale. If we need the behavior, an engineer reproduces it in under a day inside our own codebase, where we control the upgrade path and security posture. Recommendation: decline adoption; log the underlying UX need — long-text legibility in admin tables — in the internal-tooling backlog.
To engineering: If you're on Nova 1/2 and want it now, fork it, pin the commit, and own it — don't require it from Packagist, or a future composer update will pull the abandoned release again. If you're on Nova 3+, skip it and use Text::make('field')->displayUsing(...) or a small in-repo field. Either path is well under a sprint day, and the ongoing cost of the fork exceeds the cost of writing it fresh. Watch the silent-failure mode: asset-pipeline drift usually surfaces as a blank or unstyled cell, not an error, so cover it with a smoke test.
Decision: No-go on adoption. Go on a small in-house field — or a Nova theme CSS override — if the UX need is confirmed by support-ticket or operator feedback.
How can I help you explore Laravel packages today?