Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/39zde/simple-file-compressor
A tool to reduce the file size of your files. Free online, local, tracking-free, advert-free file compression. Simple and fast.
https://github.com/39zde/simple-file-compressor
a11y accessibility aria compression compressor decompression deflate deflate-compression file-compression file-compressor file-format gzip gzip-compression js-compressor no-dependencies online-file-compressor pwa pwa-apps simple-file-compressor web-tools
Last synced: 3 months ago
JSON representation
A tool to reduce the file size of your files. Free online, local, tracking-free, advert-free file compression. Simple and fast.
- Host: GitHub
- URL: https://github.com/39zde/simple-file-compressor
- Owner: 39zde
- License: mit
- Created: 2024-09-21T10:33:20.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-10-28T09:45:52.000Z (3 months ago)
- Last Synced: 2024-11-06T14:50:52.187Z (3 months ago)
- Topics: a11y, accessibility, aria, compression, compressor, decompression, deflate, deflate-compression, file-compression, file-compressor, file-format, gzip, gzip-compression, js-compressor, no-dependencies, online-file-compressor, pwa, pwa-apps, simple-file-compressor, web-tools
- Language: JavaScript
- Homepage: https://39zde.github.io/simple-file-compressor/
- Size: 292 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![pages-build-deployment](https://github.com/39zde/simple-file-compressor/actions/workflows/pages/pages-build-deployment/badge.svg?branch=main)](https://github.com/39zde/simple-file-compressor/actions/workflows/pages/pages-build-deployment)
# Simple File Compressor
A tool to reduce the file size of your files. Free no-dependency, local, tracking-free, advert-free file compression and decompression. Simple and fast.Now, that the following browser features are implemented by the major vendors:
- [Resizable ArrayBuffers](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/resizable#browser_compatibility) (since July 2024)
- [transfer ArrayBuffer to a fixed length](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/transferToFixedLength#browser_compatibility) (since March 2024)
- [Compression Streams](https://developer.mozilla.org/en-US/docs/Web/API/Compression_Streams_API#browser_compatibility) (since May 2023)nothing stands in the way of selecting a file, compressing it with the [CompressionStream API](https://developer.mozilla.org/en-US/docs/Web/API/CompressionStream), creating an archive and downloading it.
For now there are two formats supported: `gzip` and `deflate`, with no control over compression strength.
In the future this API might be expanded to finer controls and the formats `brotli` and `zstd`[^1],[^2],[^3].Try it here: [File Compressor](https://39zde.github.io/simple-file-compressor/)
- One might say: `7Zip can also do this, why would I use this instead?`
- To which one might reply: `Yes`Spread the word and star this repo. That's all, thank you for your time.
### Development
I'd like to keep this project free from dependencies. This also means no devtools, no package.json, no TypeScript, no versioning. Given the project size (in the future and now) none of this would be worth it.
There is 1 point, which I declare as exceptions:
- the use of JsDoc[^4], because it improves the readability, most IDE support it and it's inside of comments. It's plain and simple, therefore worth it.### License
Licensed under the MIT License. Copyright (c) 2024 39zde.
See [LICENSE](./LICENSE).
### Footnotes
[^1]: https://github.com/whatwg/compression/blob/main/explainer.md#future-work
[^2]: https://github.com/whatwg/compression/issues/34
[^3]: https://github.com/whatwg/compression/issues/54
[^4]: https://jsdoc.app/
[^5]: https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps