HTMLtoApphtmltoapp.net Build free
build

Preparing a ZIP for APK conversion: the 12-point checklist

7 min readUpdated 2026-10-05By the HTML to App team

Before converting a ZIP to an APK, make sure index.html is at the root of the archive, every link is relative, file names match their references exactly (Android is case-sensitive), no required file loads from a CDN, single-page apps use hash routing, and the zipped size is under the plan limit — 5 MB free or 18 MB on Pro.

The checklist

Structure

  1. index.html at the root, or inside a single wrapping folder (the builder unwraps it).
  2. Only the build output. Zip dist/ or build/, not the project with node_modules/, src/ and .git/.
  3. Standard ZIP. Right-click → Compress (macOS) or Send to → Compressed folder (Windows). Not RAR, 7z or an encrypted ZIP.

Paths and names

  1. Relative links everywhere — HTML, CSS url(), JS loaders and fetch() calls.
  2. Exact case. Hero.JPG and hero.jpg are different files on Android.
  3. Link to files, not folders. guide/index.html, not guide/.
  4. Prefer lower-case, hyphenated names without spaces. They work, but other tools trip on them.

Behaviour

  1. No CDN dependencies for anything needed offline.
  2. Hash routing for React, Vue, Angular and Svelte SPAs.
  3. No dev URLs: no localhost, LAN IPs or staging API bases.

Size

  1. Under the limit zipped — 5 MB free, 18 MB Pro. Delete *.map source maps, keep only WOFF2 fonts, convert images to WebP.
  2. No stowaways: .DS_Store, Thumbs.db, PSD/AI source files, unused videos.

Run your archive through the ZIP structure checker: it reads the ZIP in your browser and reports the start page, case issues, root paths, source maps and the size against both limits.

Zipping correctly on each OS

OSDo this
macOSOpen the build folder, select all files inside, right-click → Compress. The __MACOSX folder it adds is ignored.
WindowsOpen the folder, select all, right-click → Send to → Compressed (zipped) folder.
Linux / CIcd dist && zip -r ../app.zip .
Android phoneFiles by Google → select files → Compress, or ZArchiver.

Questions people ask

Should I zip the folder or its contents?

Either works: the builder unwraps a single top-level folder. Zipping the contents is cleaner and avoids the start page being guessed.

Why does the builder open the wrong page?

It picks index.html at the root first. If your archive has a template index.html at the root and the real one in dist/, the template wins. Zip the contents of dist/ instead.

Are source maps needed in the APK?

No. Users cannot open DevTools on a release app, so .map files only add size. Delete them before zipping.

Your HTML is one upload away from an app

Install the free builder, drop in your HTML file or ZIP, and download a signed APK in a few minutes. No watermark, no card, no Android Studio.

Build my APK free