Extract tar
Unpack a plain (uncompressed) .tar into its files, on your device. Hand-rolled USTAR reader: regular files and nested paths only; GNU long-name and PAX extended headers (common for paths over 100 bytes from some tars) are rejected with a clear error rather than mis-read, and it does not decompress .tar.gz/.tar.bz2/etc, only plain .tar.
Runs on your device. The file is never uploaded.
Extract tar unpacks a plain .tar, handing back each regular file inside it with nested paths rebuilt from the USTAR name and prefix fields. Directories, symlinks and hardlinks carry no content, so they are skipped. PAX and GNU long-name headers, which modern GNU tar writes for paths over 100 bytes, are rejected by name rather than misread.
Questions
Can it open a .tar.gz file?
Not directly. This reads plain, uncompressed tar only. Run Gzip decompress first, which strips the .gz and gives you the .tar, then extract that. The same applies to .tar.bz2 and other compressed variants, which are not supported at all. Extract ZIP handles zip archives, and there is no tool here for bzip2 or xz.
Why did it say my tar uses extended headers?
Because it contains a PAX or GNU long name entry, which this reader does not decode. Modern GNU tar emits those for paths longer than 100 bytes, so a tar made on Linux with deep paths often hits it. The entry is refused by name rather than mis-parsed into garbage. Extract that archive with a desktop tool instead.
What does it extract?
Regular files only, with their nested paths rebuilt from the standard USTAR name and prefix fields. Directory entries, symbolic links and other entry types are skipped, since they carry no file content. Dot and double dot path segments are dropped rather than resolved, so no entry can escape above the extraction root.
Why did it say the tar is not valid?
The header checksum did not match, which means the bytes are not a tar or the file is damaged. Two other refusals you might see are "this tar uses GNU base-256 numeric fields", for values too large for the octal fields, and a corrupt tar message when a declared entry size runs past the end of the archive.
Why did it say the tar is empty?
Because it held no regular files. An archive containing only directories, links or extended header entries produces nothing to hand back, so the tool says "tar is empty (or contains no regular files)" rather than returning an empty result that looks like success.
Is the archive uploaded?
No. It is read into memory and unpacked in your browser, and each extracted file is held in memory until you download it. Nothing goes to a server. Unlike Extract ZIP there is no declared size guard here, because a plain tar cannot expand: its entries are stored at full size already.