Feature parity: ArcZip 1.1.1 → Stow

Goal: everything ArcZip does, done at least as well, plus what it doesn't do. Stow is open source
and free — there is no Free/Pro split, so every row below ships to everyone.

Sources (2026-10-20): arczip.app pages (features, formats, FAQ, changelog 1.0.0 → 1.1.1) and a
static look at the notarized ArcZip 1.1.1 (222) bundle — its Info.plists, entitlements, extension
points and English UI strings. No code was decompiled or run.

What the bundle shows about ArcZip's architecture

Piece ArcZip Stow
Engine Bundled official 7zz + ZIPFoundation Bundled official 7zz (pinned, checksum-verified)
Parsing process ArcZipArchiveService.xpc (no sandbox entitlements) StowEngine.xpc, sandboxed, gets a read-only file handle, never a path
Main app Not sandboxed; onboarding asks for Full Disk Access Sandboxed, user-selected files only. Finder actions ask once per folder (security-scoped bookmark, README › Sandbox and Finder actions); install to /Applications still needs a decision
Extensions Finder Sync (com.apple.FinderSync), Quick Look preview (zip/7z/tar only) Both; Quick Look covers all 34 registered types and runs its own sandboxed engine copy
Services menu 5 Finder services Same set
Updates Sparkle Sparkle (open-source appcast on GitHub Releases)
Licensing Ed25519-signed licenses, device seats, trial, Keychain None — open source
Languages English, Simplified Chinese English, Simplified Chinese at launch (String Catalog)
OS macOS 14+ macOS 26+ (decision recorded in README)

Legend: ✅ works · 🎨 designed, UI only (simulated) · 🧪 built, pending verification · ⬜ not started · ➕ Stow goes further


1. Opening & browsing

ArcZip Stow Notes / how Stow goes further
30+ formats: zip zipx 7z rar cbr tar tgz tbz tbz2 txz gz bz2 xz lzma lz dmg iso cab cpio arj lha lzh xar rpm msi pkg jar apk spk exe(SFX) swf .001 ✅ via 7zz; 34 types registered (Shared/ArchiveTypes.swift), disk images & installers as Alternate ➕ add zstd/.tar.zst, .deb, .cbz/.cb7, .epub/.docx “Show Package Contents”
Icon, list, column views ✅ icons, list, columns (⌘1 ⌘2 ⌘3) Column view has a preview column with the file's real content
Folder navigation, back/forward history, Up One Level, path bar ✅ ⌘[ ⌘] ⌘↑ ⌘↓; going back selects where you came from; the path bar spans nested archives
Marquee selection, arrow-key navigation, Shift-extend, scroll-into-view ✅ Grid: arrows by row/column, ⇧ extends, ⌘/⇧ click, marquee (⇧/⌘ adds), type-to-select, Return opens, Space Quick Look. No animation on keyboard moves
Archive search by name or path, background full-file index with progress ✅ Terms match anywhere in the path (“docs/ handoff”), case/accent/width-insensitive, name matches first. Index builds in the background in chunks; the search field reads “Indexing… 12,000 of 40,000” and results grow while you keep browsing. ⬜ search across nested archives
Nested archives opened in place, depth limit, encrypted nested containers ✅ Depth limit 8. Passwords through an injectable PasswordHook (wire to the password sheet when that branch merges); without it, “needs a password” is reported
Archive details / inspector, archive overview ✅ ➕ Checkup; inspector shows real previews, several selected stack real thumbnails
Show/hide macOS auxiliary items (__MACOSX, .DS_Store) ✅ View › Show macOS Helper Items (⌘⇧.) Hidden by default, dimmed when shown, never extracted
Mixed / legacy filename encodings (GBK etc.), garbled-name repair ✅ ➕ Raw name bytes come from a second listing under a Latin-1 locale, so nothing is lost; each name is read in the encoding that suits it (mixed archives read right), a banner says how, and Read Names As… previews every encoding live. Extraction renames to the shown names
Extension ≠ real format detection; ZIP with prepended/appended data; SFX RAR/7Z partly (7zz) ⬜ say so in Checkup
Lazy browsing of huge archives (browse before index finishes) ✅ 100,500 entries open in 2.8 s (Release; 7-Zip's own listing is ~0.9 s of that), browse at once while search indexes (0.18 s). Scrolling 100,000 items: grid median 4.0 ms / p95 6.3 ms of main-thread work per step, list median 5.3 ms / p95 8.2 ms (-StowScrollBenchmark). ⬜ stream the listing itself
iCloud placeholders: wait for download, cancel ⬜
Open Recent menu, clear history 🎨 recents are sample · ⬜
Read-only preview of DMG/ISO (mount read-only, verify, skip installer extras like the Applications alias) ✅ through the engine, no mounting (HFS+, APFS, ISO; zlib/LZFSE/LZMA) ➕ nothing is attached, so nothing to detach or report busy; opens at the volume with the app selected; background art, volume icon and "drag here" shortcuts hidden and left out; checksums checked in the background; encrypted images explained with an Open in Finder way out; unfinished downloads caught
Compressed tarballs; documents that are ZIPs ✅ ➕ .tar.gz/.tgz/.tar.xz/.tar.bz2/.tar.zst/.tar.lz… browse as the tar inside (two 7zz piped, nothing written to disk), so the inner-.tar fallback no longer shows for them. ➕ “Show Package Contents” on .docx/.xlsx/.pptx/.epub/.pages opens them as the ZIPs they are

2. Previews

ArcZip Stow Notes
Space → Quick Look of an entry; arrow keys switch target ✅ System Quick Look panel; arrow keys move the browser's selection and the panel follows; several selected page with ← →; ⌘Y too
Hover preview after ~1 s (images, PDF, Office, text, Markdown, CSV, code, audio artwork, video frames); toggle in Settings ✅ previews · 🧪 Settings toggle (pending verification) Real content read from the archive: images (downsampled), PDF/Office/others (Quick Look), Markdown (rendered), CSV (table), code/logs (monospaced, unwrapped), fonts (the real face), audio (artwork, title, length), video (a frame, length). ➕ 450 ms, then neighbours open instantly
Thumbnails in icon view ✅ Quick Look thumbnails, only for tiles on screen, batched into one engine trip; files over 48 MB keep their icon
Quick Look extension for archives in Finder ✅ ➕ all 34 types, not just zip/7z/tar; one-line Checkup, encryption, sizes; 3 s timeout with fallbacks; Open in Stow. .tar.xz/.tar.gz show the inner .tar until tarballs are unwrapped
Encrypted entries: preview after unlock ✅ with the hook Previews use the password that opened a nested archive; for the outer archive, once the password branch stores it
Extract to temp & open with default app ✅ Open / double-click / ⌘↓. Files land read-only in a per-window cache (512 MB, least recently used first, keyed by archive identity + entry path + date), removed on close and quit, swept at launch
Drag out to Finder ✅ NSFilePromiseProvider per item; extracted only when dropped, through the usual staging and no-clobber placement, progress in Next Steps

3. Extraction

ArcZip Stow Notes
Extract all / selected / drag-out to Finder ✅ drag-out: file promises, see Previews
Extract All → folder named after archive ✅ automatic (one item lands as itself) or always
After Extract All: keep / move archive to Trash / ask ✅ with “Don’t ask again”
Auto-close window after extract / install ✅ setting
Same-name folder conflicts: Merge / Keep Both; file Replace ✅ Merge / Keep Both; Replace / Keep Both / Skip; “do the same for the rest” ➕ replaced items go to the Trash; stopping undoes everything placed so far; apps are never merged
Skip system metadata (__MACOSX, AppleDouble, .DS_Store, Thumbs.db, desktop.ini) while keeping dotfiles like .gitignore ✅ setting, on by default ➕ Finder tags, comments and other Mac details in AppleDouble are put back on the files
Unsafe paths, special files (FIFO, sockets, devices), links ✅ containment ➕ explained in Checkup
Password archives (incl. RAR), incorrect-password retry, CJK passwords (show-password for IME) ✅ sheet with retry for opening (encrypted 7z file lists), extracting and nested archives; password kept in memory while the archive is open · 🧪 (pending verification) show-password-by-default setting ZIP passwords outside ASCII get a warning when packing
Batch extraction queue, stacked progress windows ✅ File › Extract Archives… or drop several; compact progress stack conflicts and keep/trash asked once per batch
Staged writes, cleanup on cancel/failure ✅
Integrity check of disk images before browsing ✅ in the background (browsing doesn’t wait)

4. Creating archives

ArcZip Stow Notes
Create ZIP / 7Z / TAR (+gz/bz2/xz) ✅ Sandboxed engine; files stream in as an Apple Archive, the archive streams back. .tar.zst: the bundled 7zz can only read zstd, so not yet
Purpose presets: General sharing, Windows, Mac-to-Mac (xattrs), Linux & servers (Unix attrs), smaller archive ✅ Windows/Mac/Linux/Web ➕ each audience changes the archive itself: Windows/Web get safe names, NFC, no Finder files, no links; Linux keeps links and modes; Mac keeps tags/xattrs as __MACOSX AppleDouble (ZIP)
Compression levels: Store, Fastest, Fast, Balanced, Maximum, Smallest (LZMA2 solid block sizes, store incompressible files) ✅ More Options -mx 0/1/3/5/7/9 with 7-Zip's solid-block defaults; ZIP stores incompressible files per entry
Each preset remembers its level; default preset & level in Settings ✅ remembered · 🧪 Settings UI (pending verification) Last audience is remembered too
Windows filename check with editable suggested names ✅ ➕ clashes after renaming (incl. case-only) are numbered; edited names are made safe too
AES encryption (ZIP), header/filename encryption (7Z); ZIP passwords ASCII-only warning ✅ Password goes to 7-Zip on stdin, never argv
Split volumes, default volume size ✅ 100 MB / 700 MB / 4 GB · 🧪 default in Settings (pending verification) Name.7z.001…; Archive Utility can't open split ZIPs
Verify integrity after creating ✅ More Options Failed test keeps nothing
CPU core limit for compression ✅ PackCPUCores key (0 = all) · 🧪 Settings UI (pending verification)
Replace / Keep Both when archive exists ✅ Replace moves the old archive and its volumes to the Trash
Create disk image (DMG) ⬜ (string present in ArcZip; low priority)
Quick Compress with defaults (Finder) ✅ Services and Finder menu pack through the create engine (EnginePacker) names like Finder (“Report.zip”, “Archive 2.zip”)

Entry points: New Archive (⌘N) file picker, drops on the welcome window, the Tray's Pack button.
Progress and result appear in a Next Steps-style capsule (Stop, Show in Finder).

5. Editing existing archives

ArcZip Stow Notes
Add, delete, replace, rename items; save; undo/redo ⬜
Original untouched until save; rollback on failure ⬜ (pattern exists for extraction)
Detect archive changed on disk → reload or save a copy ⬜
Rename the archive itself (incl. SMB/NAS) ⬜
Keep browsing position after save ⬜

6. Next Steps (ArcZip “Flow”)

ArcZip Stow Notes
Install app from archive/DMG to /Applications; replace existing; reveal in Finder ✅ one-time folder grant (see README › Installing) replace shows both versions, old copy to the Trash; refuses while the app is running
Signature & notarization check (unsigned / ad-hoc / unnotarized / unknown) with warnings ✅ SecStaticCode + requirements ➕ plain-word verdict in Checkup and the inspector (“Check Signature” before installing)
Optional quarantine-flag removal ✅ off by default, explained installed apps keep the archive’s quarantine so Gatekeeper still checks them; if macOS refuses removal, Checkup says so
Honour developer “drag to X” DMG layouts ✅ APFS images give the target; HFS+ ones only reveal a link named “Applications”
Install fonts (OTF/TTF/TTC) to user library, replace existing ✅ Replace / Skip web fonts reported as not installable
PKG: prepare safely, hand off to Installer ✅ unpacked beside the archive, removed when Installer quits
After install: keep/trash archive, close window ✅
Alternative actions list; customise which actions show; restore suggestions ⬜

7. Compact window (ArcZip “Mini”) → Glance

ArcZip Stow Notes
Opens near the pointer, compact browse/extract ⬜
Pin on top ⬜
Switch Glance ↔ full window keeping location, selection, history ⬜
Default to Glance when opening from Finder/Quick Look ⬜
Liquid Glass / classic material; colourful window controls option ⬜

8. Collecting files (ArcZip “File Box / Shelf”) → Tray

ArcZip Stow Notes
Menu-bar icon, auto-show on drag, collapse after inactivity (configurable), pin open 🎨 floating panel · ⬜ menu bar, auto-show
Folder browsing, previews, multi-select, drag out 🎨 list + drag-out
Actions: compress, extract, collect into a folder (then rename), share, reveal, send to main window 🎨 Pack/Clear · ⬜ rest
Border colour setting ⬜

9. System integration

ArcZip Stow Notes
Finder context menu (Finder Sync) incl. optional external drives; Repair Finder menu (re-register, restart Finder) ✅ menu, external-drive setting · 🎨 repair (sandbox: LSRegisterURL/pluginkit refused, so it opens the extension switch and explains relaunching Finder) Extract Here, Extract To…, Open in Stow, Compress with Stow…
Services: Extract Here, Extract To…, Quick Compress, Compress…, Send to app ✅ (Quick Compress waits on the create engine) results revealed in Finder; progress on the Dock icon
File associations UI: choose formats, set/restore default app, report result ✅ model + view · 🧪 Settings host (pending verification) ➕ remembers each type's previous app; reports refusals and types macOS kept
Launch at login, Dock icon hides with last window ✅ (opt-in) login item shows macOS's real status
URL scheme for extension → app hand-off (one-time requests) ✅ ➕ 128-bit one-time tokens, 60 s, no paths in URLs
Reading files dropped from other apps (WeChat etc.), permission guidance ⬜

10. Settings, onboarding, maintenance

ArcZip Stow Notes
General: appearance (light/dark/auto), default view, CPU cores 🧪 pending verification
Compression defaults, Extraction defaults, Flow, Box, Mini panes ⬜
Password field: show by default (for CJK input) 🧪 pending verification
Advanced: temp-file usage & cleanup, reset all preferences 🧪 pending verification
Onboarding: intro, file associations, Finder extension, permissions, interactive Box demo 🧪 pending verification
Updates: automatic check, install after tasks finish ⬜
Open-source licence viewer 🧪 pending verification
Native dialogs, detailed error codes + request IDs for support partial

Deliberately not copied

Where Stow already goes further