H5P package checker for media and library migration
Moving an interactive lesson takes more than uploading a ZIP. Inspect its content assets, bundled libraries and declared dependencies, then compare the destination’s installed versions. This static preflight runs on your device and never executes code from the package.
H5P Migration Check
Start with the details you know. Unknown answers stay unknown. Try the example to see how the check works.
Your inputs
Required fields are marked with an asterisk.
Your report
A practical interpretation of your evidence.
Make the next step clear.
Your findings, assumptions and next steps will appear here after you run the check.
H5P Migration Check · https://h5p.kitforma.com/ · KitForma
Local ZIP and JSON inspection, with no package upload
Separate missing files from dependencies already installed at the target
A migration report and a practical learner-test checklist
Understand your setup.
Focused guides explain the rules, the edge cases and the checks worth doing before you act.
Move an H5P lesson with a repeatable test plan
Inventory the package, resolve target dependencies and verify the learner experience in a private course.
Read the guide ↗Field guide / 02Find missing images, audio and video in an H5P export
Understand local asset paths and external resources without executing an untrusted package.
Read the guide ↗Field guide / 03Resolve H5P library and version mismatches
Compare package requirements with the destination’s actual library inventory.
Read the guide ↗Before you start
Will my H5P file leave this device?
No. The selected package is read locally. The checker does not upload it, connect to your LMS or run its JavaScript. Exported reports may contain filenames and library details, so share them deliberately.
Does a missing bundled library mean my file is broken?
Not necessarily. The destination may already have the exact library line installed. Supply the target inventory to distinguish an available dependency from an unresolved one. A different major/minor version is not assumed to be interchangeable.
Why do I need the target library versions?
A package’s requirements and a platform’s installed libraries are separate facts. The checker can see what is bundled, but it cannot inspect your LMS account. An administrator-provided inventory makes the comparison useful.
Can this certify that a lesson, gradebook or accessibility feature works?
No. It checks selected structural facts. Import into a private test course and verify interactions, media, keyboard use, completion, score reporting and resume behavior as a learner.
Why does the example show a missing image?
It is an intentionally incomplete illustrative package. The example demonstrates an actionable missing-file finding and a target patch mismatch. H5P.DemoPrompt is not presented as an actual installed content type.
What if the package is too large or invalid?
The tool stops at its resource limits instead of claiming a complete result. Export a smaller lesson or inspect the original through a trusted local authoring environment. Re-export malformed packages rather than manually removing files at random.
Sources & assumptions
Rules are reviewed against the references below. Manufacturer updates, firmware and your exact setup can change the result.
- H5P package specification ↗
Packages, optional content and library structure.
- H5P package metadata definition ↗
h5p.json metadata and dependency fields.
- H5P library definition ↗
Library versions, required assets, dependencies and core API.
- H5P file structure ↗
Root package, content folder and library layout. Reviewed 13 October 2026.
Reviewed 2026-10-13. Read our methodology or report an issue.