{"id":51072000,"url":"https://github.com/borgar/zip","last_synced_at":"2026-06-23T11:30:59.651Z","repository":{"id":355603863,"uuid":"1228790941","full_name":"borgar/zip","owner":"borgar","description":"A library to manipulate zip files, using native implementations for compression where available.","archived":false,"fork":false,"pushed_at":"2026-05-04T11:45:54.000Z","size":22255,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-04T13:34:04.447Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/borgar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-04T11:35:20.000Z","updated_at":"2026-05-04T11:45:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/borgar/zip","commit_stats":null,"previous_names":["borgar/zip"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/borgar/zip","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borgar%2Fzip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borgar%2Fzip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borgar%2Fzip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borgar%2Fzip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/borgar","download_url":"https://codeload.github.com/borgar/zip/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borgar%2Fzip/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34686727,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-23T02:00:07.161Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-23T11:30:57.594Z","updated_at":"2026-06-23T11:30:59.647Z","avatar_url":"https://github.com/borgar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @borgar/zip\n\nA library for reading and writing ZIP archives, using native platform APIs for compression where available.\n\n- 🚀 Uses native platform implementations of zlib/deflate where available (which is nearly everywhere!),\n  only falling back to JS when all else fails.\n\n- 🧠 Keeps zip compressed in memory, rather than expanding all on load.\n\n- 📦 Reads pretty much any zip file (only known limitation is Zip64 offsets that exceed the largest numbers JS can hold).\n\n- 💬 Fully typed for your convenience.\n\n\n## Installation\n\n```bash\nnpm install @borgar/zip\n```\n\n## Usage\n\n```js\nimport { ZipArchive } from '@borgar/zip';\n\n// Read an existing archive\nconst zip = new ZipArchive(arrayBuffer);\nconst text = await zip.readText('hello.txt'); // \"hello world\\n\"\nconst data = await zip.read('image.png'); // ArrayBuffer([ 89 50 4E 47 0D 0A 1A 0A... ])\n\n// Create a new archive\nconst zip = new ZipArchive();\nawait zip.write('hello.txt', text);\nawait zip.write('data.bin', data);\nconst output = zip.toArrayBuffer();\n\n// Trigger a browser download\nconst zipBlob = new Blob([ output ]);\nconst urlObject = URL.createObjectURL(zipBlob);\nconst a = document.createElement('a');\na.href = urlObject;\na.download = 'MyFilename.zip';\na.click();\nURL.revokeObjectURL(urlObject);\n```\n\n## API\n\nThe API is fully documented in [API.md](API.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborgar%2Fzip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fborgar%2Fzip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborgar%2Fzip/lists"}