Open and Run ZIP Web Projects on iPhone & iPad
A zipped website, a course project, an exported prototype — import it and run it like a real site, no Mac and no internet required.
Updated 2026-08-09
Safari can't open a local multi-file website on iOS, and unzipping in the Files app just leaves you with a folder of files that don't link to each other.
OpenHTML imports the whole ZIP (or folder) as one project: it finds the entry page, keeps every relative path working, and previews the site offline. Pages that use fetch(), ES modules or JSON data can run on a private 127.0.0.1 Local Server — the same conditions as a real web server, entirely on your device.
From ZIP to running site
Import the ZIP or folder
Share the archive to OpenHTML or pick it in the importer. The project is unpacked into a private copy; nothing is uploaded.
Preview the entry page
The entry HTML is detected automatically — and if a project has several candidate pages, you can switch the entry in the project workbench.
Turn on Local Server when needed
If the site uses fetch(), ES modules or XHR, switch the project to Local Server mode (Pro): it runs on 127.0.0.1, loopback only, and stops when you leave the page.
See the whole project, not just the page
The project workbench lists every file with sizes and structure checks: missing resources referenced by the HTML, files that exist but are never used, suspicious paths that escape the project root, and candidate entry pages.
- Diagnostics flag missing files, blocked remote resources and JavaScript errors — with one-tap fixes.
- The source viewer opens any file in the project with syntax highlighting, search and line numbers.
- Watch fetch, XHR and WebSocket traffic in the network panel, and inspect the DOM on device (Pro).
- Test responsive layouts with phone / tablet / desktop viewport presets, or request the desktop site (Pro).
Ship it back out
When you've fixed or reviewed a project, export it: repackage the current state as a clean ZIP, inline everything into a single self-contained HTML archive, or print the rendered page to a full-length PDF or long image (Pro).
The Local Server binds to 127.0.0.1 only — nothing on your network can reach it, and it shuts down when the app goes to the background. Network access for the page itself stays off unless you allow it.
Frequently asked questions
Why does my project need a local server at all?
Browsers block fetch(), ES modules and XHR on file:// URLs for security. A localhost server gives the page a real origin, so those features work exactly as they would in production.
How large can the ZIP be?
Regular web projects import fine; archives are size-checked before unpacking so a corrupt or oversized ZIP fails with a clear message instead of hanging the app.
Can I edit files inside the project?
OpenHTML is a viewer and debugger, not an IDE — you can read every file with highlighting and search, switch entries, diagnose and re-export. For editing, round-trip through your editor of choice.
Does the wrong entry page open?
Open the project workbench and pick any candidate HTML as the new entry — the choice is remembered per project.
Run your web project where you are
Import a ZIP, preview it offline, debug it with real tools, and export a clean result — all on your iPhone or iPad.
Download OpenHTMLFree on the App Store — core viewing needs no purchase.