amjadiqbal/laravel-rough-notation
A Laravel package that wraps Rough Notation, making it easy to add hand-drawn style annotations such as underlines, boxes, circles, highlights, brackets, and strike-throughs to text using Blade directives and PHP helpers with configurable animation.
rough-notation JS library into Laravel Blade, giving you directives/components to draw hand-drawn style callouts, circles, underlines and brackets over existing DOM elements. That maps directly to "look here" moments: onboarding spotlights, empty-state hints, changelog callouts, pricing-page emphasis, docs walkthroughs.rough-notation (a mature, widely used JS library). Writing this yourself is a few hours of Blade directive + config plumbing. That cuts both ways: adoption cost is near zero, but so is switching cost, so this is a low-stakes decision, not an architecture one. Do not let it into a design-system-critical path.rough-notation directly in the component layer and skip the PHP wrapper entirely.@roughNotationScripts compilation outright, and data-rough-options was HTML-entity over-escaped. Treat "1.0" as a label, not a stability or support commitment.Adopt when:
Look elsewhere / build in-house when:
rough-notation directly; the wrapper adds indirection with no payoff.Before shipping, regardless: re-verify the two fixed defects on your versions, pin the tag explicitly (^1.0), and confirm the directive is exercised by at least one view in CI. The fact that a compile-breaking parse error survived until the test suite was finally run means the happy path was not covered by anyone's build.
To executives: This is a presentation-layer utility, not infrastructure. It adds hand-drawn style annotations to our web pages — the kind of visual emphasis used in onboarding and documentation — for effectively zero incremental cost, since it wraps a well-established open-source JS library. The 1.0.0 tag is bookkeeping: the code has been installable since February and this release adds two correctness fixes rather than new capability. Risk is contained: it touches no data, no auth, no business logic, and can be removed in an afternoon. Recommend a scoped trial on one marketing or docs surface with a success metric attached, not a platform-wide standard.
To engineering: Thin Blade wrapper over rough-notation. v1.0.0 is a formal tag plus two bug fixes discovered by running the previously unexecuted Pest suite — @roughNotationScripts had a parse error from an unescaped quote (any view using it failed to compile) and data-rough-options was over-escaped, corrupting JSON for consumers reading the attribute literally. Both are fixed. Implications: the directive path had effectively zero real-world usage or CI coverage before now, so treat the 1.0 label as nominal. If we adopt, we own the risk — pin the tag, add a smoke test that renders a view using the directive, and review the attribute-escaping path ourselves rather than assuming it's correct. If we're on Inertia or a JS component layer, skip the wrapper and use rough-notation directly.
How can I help you explore Laravel packages today?