pavloniym/nova-iframe-page
Laravel Nova package for adding iframe-based pages to your admin panel. Embed external or internal web content via a configurable URL and expose it as a Nova menu item, keeping third-party tools accessible without leaving Nova.
^1.0 and treating it as a production dependency rather than a dev experiment. Confirm Nova version compatibility before pinning.Adopt when most of the following hold:
X-Frame-Options: DENY or a restrictive frame-ancestors CSP. Validate this before scheduling any work; it is the most common reason this class of package gets abandoned mid-sprint.Look elsewhere when:
postMessage communication, dynamic per-user URLs, or event handling between Nova and the embedded app.Before committing: run a half-day spike that (1) installs against your Nova version, (2) loads the actual target URL in a staging admin, and (3) confirms the browser console is free of framing/CSP errors. Review the source — it is small enough to read in full.
For executives: This is a near-zero-cost way to consolidate the tools our ops and support teams use every day into the admin panel they already have open. It removes tab-switching, shortens time-to-answer for support tickets, and costs no license fee. Effort is measured in hours, not sprints, and the risk is contained because it is a display-only component that can be removed without touching our data model.
For engineering: A thin Laravel Nova wrapper around an iframe view. v1.0.0 gives us a stable, pinnable API surface and a small, auditable codebase — worth a 30-minute read before we depend on it. Ask: pin the version, confirm Nova compatibility, and add a note in the runbook about CSP/X-Frame-Options for any URL we embed, since that failure mode is silent until someone opens the page. If the maintainer goes quiet, forking is a realistic fallback given the code size.
Known risks to flag: single maintainer and bus factor of one, sparse release documentation, no guarantee of forward compatibility with future Nova majors, and the hard constraint that the embedded origin must permit framing. None of these are blockers for a read-only internal dashboard; all of them matter if this becomes load-bearing for a customer-facing surface.
How can I help you explore Laravel packages today?