awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
nodeca avatar

nodeca/pako

0
View on GitHub↗
6,081 stele·801 fork-uri·JavaScript·MIT·2 vizualizărinodeca.github.io/pako↗

Pako

Pako is a pure JavaScript compression library that ports the C zlib library to JavaScript, providing deflate and gzip compression and decompression capabilities. It runs in both browser and Node.js environments by using typed arrays and universal JavaScript, avoiding platform-specific APIs for cross-platform compatibility.

The library handles data through bitwise operations for Huffman coding and LZ77 matching, and automatically encodes string inputs to UTF-8 before compression while decoding them back on decompression. It supports streaming chunk-based processing, allowing incremental data handling by feeding pieces through a stateful compressor or decompressor with end-of-stream detection.

Pako works with both binary data and JavaScript strings, offering deflate compression and inflate decompression alongside gzip format support for compatibility with standard archive tools. The library processes data using Uint8Array for raw binary input and output, and provides options to decompress directly back to JavaScript strings.

Features

  • Deflate Compressors - Compress binary or string data using the deflate algorithm to produce a smaller Uint8Array.
  • JavaScript Implementations - JavaScript implementation of deflate compression and decompression for binary and string data.
  • Gzip Compression - Wrap compressed output in the gzip format so standard tools and archives can read it.
  • Automatic UTF-8 String Compression - Detect string input and encode it to UTF-8 before compression, and decode decompressed UTF-8 data back to a JavaScript string when requested.
  • JavaScript Implementations - JavaScript library for compressing and decompressing data in the gzip format.
  • Zlib Compression Utilities - Ports the C zlib library to JavaScript using typed arrays and bitwise operations for compression and decompression.
  • JavaScript Ports - High-speed port of the zlib compression library to JavaScript, supporting deflate and gzip formats in browsers and Node.js.
  • Streaming Compression Engines - Library supporting incremental chunk-based compression and decompression with end-of-stream detection.
  • Typed Arrays - Uses Uint8Array for raw binary data input and output, avoiding string conversions for performance.
  • Node.js Compression Libraries - Adding deflate and gzip compression to Node.js applications with a pure JavaScript library that matches the zlib API.
  • Stateful Compression Streams - Supports incremental data processing by feeding chunks through a stateful compressor or decompressor.
  • Bitwise Compression Algorithms - Performs Huffman coding and LZ77 matching using JavaScript bitwise operations for speed.
  • Browser-Based Compression Libraries - Compressing and decompressing data directly in the browser using JavaScript, without server round-trips or native plugins.
  • Gzip Decompression - Read gzip-encoded input and decompress it back to the original binary data.
  • Deflate Decompression - Implements both raw deflate and gzip container formats, enabling compatibility with standard tools.
  • Inflate Stream Decompression - Restore compressed data to its original form using the inflate algorithm, returning a Uint8Array or string.
  • Node.js Runtime Compatibility - Runs in both browser and Node.js environments by avoiding platform-specific APIs and using universal JavaScript.
  • Automatic UTF-8 - Detects string inputs and automatically encodes them to UTF-8 before compression, then decodes back on decompression.
  • Compression Encoding Handlers - Encode input strings as UTF-8 before deflating, and decode inflated data back to JavaScript strings.
  • String Compression - Encode JavaScript strings as UTF-8 before compressing them with deflate or gzip.
  • Decompression to JavaScript Strings - Decode decompressed UTF-8 data back into a JavaScript string using the to: 'string' option.
  • Incremental Stream Processing - Process input piece by piece through a streaming interface, allowing compression or decompression of large data without loading it all at once.
  • Node.js Browser Emulation - Runs in both browser and Node.js environments by avoiding platform-specific APIs and using universal JavaScript.
  • Compression Utilities - High-speed zlib port for pure JavaScript.
  • File Compression - High-performance zlib implementation for compression.
  • HTTP请求相关 - Listed in the “HTTP请求相关” section of the Awesome Frontend awesome list.

Istoric stele

Graficul istoricului de stele pentru nodeca/pakoGraficul istoricului de stele pentru nodeca/pako

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Alternative open-source pentru Pako

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Pako.
  • madler/zlibAvatar madler

    madler/zlib

    6,687Vezi pe GitHub↗

    zlib is a lossless data compression library that implements the deflate compression algorithm, combining LZ77 sliding window and Huffman coding. It provides the core compression and decompression engines, along with support for gzip, zlib, and raw deflate stream formats, enabling data to be compressed and restored without any loss of information. The library offers a range of capabilities for handling compressed data, including single-call memory and file operations, as well as incremental stream-based processing for working with data larger than available memory. It includes mechanisms for a

    C
    Vezi pe GitHub↗6,687
  • icsharpcode/sharpziplibAvatar icsharpcode

    icsharpcode/SharpZipLib

    3,913Vezi pe GitHub↗

    SharpZipLib is a .NET compression library and file archiver used to create, extract, and manage Zip, GZip, Tar, and BZip2 archives. It provides a framework for compressing and decompressing data streams and files within the .NET ecosystem. The library distinguishes itself through support for archives that exceed the standard four gigabyte size limit. It also includes capabilities for decrypting password-protected files using industry-standard encryption and managing Tar archives with long filename support. The project covers a broad range of archive management operations, including integrity

    C#
    Vezi pe GitHub↗3,913
  • pieroxy/lz-stringAvatar pieroxy

    pieroxy/lz-string

    4,416Vezi pe GitHub↗

    lz-string is a JavaScript library and command-line tool for compressing and decompressing string data using Lempel-Ziv algorithms. It provides utilities to reduce the size of strings and files to optimize storage and network bandwidth. The project includes specialized encoders to ensure compressed data is compatible with different transport layers. These include options for Base64 encoding, UTF-16 string mapping for increased storage density, and URI-safe translation for use in web addresses. The library supports client-side data compression for local storage optimization and provides a comm

    TypeScript
    Vezi pe GitHub↗4,416
  • google/wuffsAvatar google

    google/wuffs

    4,773Vezi pe GitHub↗

    Wuffs is a toolset for generating memory-safe, sandboxed parsers and decoders from domain-specific language specifications. It functions as a compiler that transforms these specifications into executable code for C, Go, or Rust, specifically designed to decode untrusted file formats while preventing buffer and integer overflows. The project employs a sandboxed execution model that prohibits system calls and manual memory management to ensure computations are side-effect free. It utilizes a refined type system and compile-time constraint verification to enforce memory safety, alongside saturat

    Ccodecmemory-safetyparsing
    Vezi pe GitHub↗4,773
Vezi toate cele 30 alternative pentru Pako→

Întrebări frecvente

Ce face nodeca/pako?

Pako is a pure JavaScript compression library that ports the C zlib library to JavaScript, providing deflate and gzip compression and decompression capabilities. It runs in both browser and Node.js environments by using typed arrays and universal JavaScript, avoiding platform-specific APIs for cross-platform compatibility.

Care sunt principalele funcționalități ale nodeca/pako?

Principalele funcționalități ale nodeca/pako sunt: Deflate Compressors, JavaScript Implementations, Gzip Compression, Automatic UTF-8 String Compression, Zlib Compression Utilities, JavaScript Ports, Streaming Compression Engines, Typed Arrays.

Care sunt câteva alternative open-source pentru nodeca/pako?

Alternativele open-source pentru nodeca/pako includ: madler/zlib — zlib is a lossless data compression library that implements the deflate compression algorithm, combining LZ77 sliding… icsharpcode/sharpziplib — SharpZipLib is a .NET compression library and file archiver used to create, extract, and manage Zip, GZip, Tar, and… pieroxy/lz-string — lz-string is a JavaScript library and command-line tool for compressing and decompressing string data using Lempel-Ziv… google/wuffs — Wuffs is a toolset for generating memory-safe, sandboxed parsers and decoders from domain-specific language… johnezang/jsonkit — JSONKit is an Objective-C library used for parsing, serializing, and manipulating JSON data. It functions as a JSON… thejoshwolfe/yauzl — yet another unzip library for node.