jord-jd/clippy-for-laravel
Bring the nostalgic Microsoft Clippy assistant to your Laravel app. This package adds a configurable helper that displays tips and messages in your UI via simple Blade components, with easy Composer installation—a fun touch for admin panels and onboarding.
composer require for the package, then publish its config and assets (php artisan vendor:publish) and pick a tag for the Clippy/agent assets. Commit or gitignore the published assets deliberately — they are part of your app's public surface now.</body>), or into the specific views where you want the assistant. It renders the agent markup plus the script tags for jQuery and clippy.js.public/vendor/<package>/ for the bundled jquery.min.js and clippy.js/agent assets.clippy.js already sitting in public/vendor/. Use --force for the asset tag, then hard-refresh and check the network tab.'enabled' => env('CLIPPY_ENABLED', false) in local/CI).@if (session('status')) block that hands session('status') to the assistant is the highest-value pattern: you get contextual feedback without touching every controller.$errors->first() (or a summarised count) — the JSON encoding makes this safe, which was the historical reason people avoided it.public/vendor/... or copy them into your Vite pipeline. If you use Vite, be explicit about it — mixing the package's script tags with a bundler is the most common source of "agent loads in staging, not production"..live(), .die(), $.browser, $.fn.load() as an event shortcut, jQuery.fn.size(), and the removed jQuery.boxModel/$.support shims are all gone. Audit anything in public/ or your own JS that touches the assistant, and test with the browser console open — 3.x fails loudly, which is helpful, but only on the code path you actually exercise.public/, composer update alone leaves the old jQuery and old clippy.js in place. Add a deploy step (vendor:publish --tag=... --force) or a check in your release notes; otherwise the security fix ships in vendor/ and never reaches users.data- attribute, a tooltip, or via {!! !!}, escape it yourself. Only the generated <script> payload is covered.Content-Security-Policy you still need a nonce or hash — expect the agent to silently not appear if you've just tightened CSP, and check the console rather than the package.public/vendor/ directly means the next --force publish wipes your work — extend via a separate file that runs after the package's script.How can I help you explore Laravel packages today?