30 open-source projects similar to nodeca/pako, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Pako alternative.
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
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
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
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
JSONKit is an Objective-C library used for parsing, serializing, and manipulating JSON data. It functions as a JSON parser that converts text into native data structures and a serializer that transforms native objects into formatted JSON text. The library includes a gzip compression wrapper that compresses serialized JSON payloads to reduce network transfer sizes and automatically detects and decompresses gzip buffers before decoding. The toolset provides capabilities for JSON parsing and serialization, supporting customizable indentation, character escaping, and flexible comment handling.
This project is a learning guide and collection of study notes designed to teach Node.js backend development. It provides a comprehensive core API reference and practical demonstrations for implementing server-side logic, network programming, and system APIs. The guide specifically covers advanced technical domains including process management for scaling applications via clusters and child processes, as well as network programming for building TCP, UDP, and HTTP services. It also includes detailed instructional material on security implementation, focusing on cryptographic hashing and encryp
This project provides a lossless compression algorithm and a byte-oriented compression library designed for high-speed data reduction and maximum decompression speed. It functions as a stream-oriented compression engine, a software library for encoding and decoding data blocks, and a command-line tool for managing interoperable compressed frames. The system distinguishes itself through the use of predefined pattern dictionaries to improve compression ratios for small data sets and small packets. It supports multiple processing modes, including high-speed block compression for minimal latency
WasmEdge is an extensible WebAssembly runtime that executes WebAssembly bytecode in a secure sandbox for cloud, edge, and embedded applications. It functions as a multi-language compiler, compiling applications written in Rust, JavaScript, Go, and Python into WebAssembly bytecode for sandboxed execution, and as a server-side JavaScript runtime that runs JavaScript programs with ES6 modules, NPM packages, and Node.js-compatible APIs. The runtime also serves as an AI inference runtime, executing AI models from JavaScript using WASI-NN plug-ins for inference tasks on personal devices and edge har
🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀
ZipArchive is a Swift library and file utility designed for compressing and extracting files into zip archives on iOS, macOS, and tvOS. It serves as a programmatic wrapper for managing file system operations and archive creation on Apple platforms. The library supports the creation of password-protected archives using symmetric-key encryption to secure data during storage or transfer. It allows for the control of compression levels and supports the handling of large file sizes. The toolset covers core archive capabilities including the creation of compressed files from data buffers and the e
Browser image compression is a JavaScript utility designed to reduce image file sizes directly within the web browser. By adjusting dimensions and quality settings locally, the library minimizes bandwidth usage and storage requirements before files are uploaded to a server. The library maintains interface responsiveness by offloading heavy image manipulation tasks to background worker threads. It manages large image files using memory-efficient binary objects and utilizes the browser canvas application programming interface to re-encode data into formats such as JPEG or WebP. Users can contr
Hub is a multimodal AI data lake and vector database designed for storing and querying embeddings, text, audio, and images. It functions as a dataset version control system and a machine learning data streaming engine to support large-scale model training. The system utilizes a serverless PostgreSQL vector store to index high-dimensional embeddings for semantic search. It provides a visual interface for inspecting multimodal datasets and viewing annotations such as bounding boxes and masks. The platform handles cloud-agnostic storage synchronization and implements lazy, compressed data strea
sql.js is a serverless, in-memory SQL database engine that ports SQLite to WebAssembly for use within a web browser. It provides a JavaScript interface to initialize relational databases, execute SQL queries, and manage structured data without requiring a backend server. The project enables the import and export of database states using typed arrays, allowing in-memory data to be persisted as files. It supports high-precision integer retrieval via BigInt and utilizes prepared statements to increase execution speed and security. The engine includes capabilities for client-side data management
Simplex-noise.js is a mathematical noise generator and graphics library implemented in TypeScript. It computes smooth pseudo-random values across two, three, and four dimensions, producing organic patterns and spatial effects without relying on static image assets. The library operates through a stateless mathematical engine that uses precomputed coordinate lookup tables and typed array buffers to manage numeric data. It supports deterministic seed injection, accepting custom pseudo-random number generator functions to initialize permutation tables with reproducible values for repeatable outp
Ouch is a command-line archive utility designed for compressing and decompressing files across multiple formats, including zip, tar, 7z, and zstd. It functions as a secure archive processor that sanitizes metadata to prevent path traversal attacks and terminal injection during extraction. The tool features a chain compression pipeline that allows for the sequential application of multiple compression algorithms by parsing chains of file extensions in a filename. It also includes a dedicated accessibility mode that optimizes terminal output for screen readers and text-to-speech technologies by
Goja is a JavaScript engine and ECMAScript compliant interpreter implemented entirely in Go. It serves as an embedded scripting engine that allows Go applications to execute JavaScript code and integrate a programmable scripting layer without relying on Cgo or external native dependencies. The project functions as a bridge between Go and JavaScript, enabling bidirectional data exchange and function invocation. It allows Go hosts to expose native structs, slices, and maps as JavaScript objects and arrays, while providing mechanisms to export script values and functions back into native Go type
The browserify-handbook is a comprehensive documentation guide for Browserify, a CommonJS module bundler and JavaScript build tool. It explains how to compile Node.js style modules into single JavaScript files for execution within web browsers. The guide covers the generation of universal module definition bundles that function across Node, AMD, and browser environments. It also details the use of browser-compatible polyfills for Node.js built-in modules to ensure cross-platform compatibility. The manual describes capabilities for source code transformation, frontend build automation, and we
http-parser is a C library designed for zero-copy HTTP message parsing, URL deconstruction, and the management of protocol upgrades and chunked encoding. It provides utilities to extract headers, methods, and status codes from HTTP requests and responses. The project includes a zero-copy URL parser for deconstructing strings into individual components and a mechanism for detecting protocol switch requests to identify the exact byte offset where non-HTTP data begins. It also features a decoder for handling chunked transfer-encoded data streams.
This project is a CommonJS module bundler and resolver designed to combine interdependent JavaScript files into a single script for execution in web browsers. It functions as a Node.js JavaScript bundler that emulates server-side core modules and resolves dependencies to ensure compatibility between server-side logic and browser environments. The system features an extensible bundling pipeline and a browser-side module resolver. It provides a plugin architecture for transforming source code and a source map generator to correlate bundled output back to original files for debugging. The proje
Node.js is an open-source, cross-platform JavaScript runtime environment built on the V8 engine, designed for executing JavaScript code outside a web browser. It operates as a server-side JavaScript platform with an event-driven, non-blocking I/O architecture that enables building scalable network applications and web servers. The runtime integrates the CommonJS module system for synchronous module loading and the npm ecosystem for sharing and reusing packages. The platform provides comprehensive capabilities for web server development, including creating HTTP and HTTPS servers, managing HTTP
Napajs is an embeddable JavaScript engine and multi-threaded runtime designed to be integrated directly into other software applications as a component. It serves as a parallel computation framework that allows JavaScript code to execute across multiple threads, bypassing the standard single-threaded event loop limitation to handle CPU-intensive tasks. The runtime is distinguished by its ability to load and execute modules from the NPM ecosystem and its pluggable execution environment. This architecture allows for custom implementations of memory allocation, system logging, and performance me
http-parser is a C-based library for extracting request and response metadata from raw HTTP data streams. It utilizes a state-machine approach to identify message segments and boundaries. The project implements zero-copy string parsing and pointer-based URL deconstruction to avoid memory allocations and data duplication. It supports incremental stream processing to handle fragmented data chunks and includes mechanisms for decoding chunked encoding and managing network protocol upgrades.
Okio is a Java I/O library providing a set of tools for efficient byte-stream processing and file system operations. It functions as a buffered byte stream handler and streaming data transformer, utilizing a cross-platform file system API to manage data movement. The project is distinguished by its use of pooled mutable byte buffers that treat sequences as queues to reduce memory copying and garbage collection churn. It further decouples file operations from the host operating system through an abstraction-based file system, allowing for consistent path manipulation and atomic operations acro
esm.sh is a proxy-based registry and distribution system for buildless web development. It retrieves packages from external registries and serves them as ES modules directly to the browser, eliminating the need for a local build step. The project transforms TypeScript, JSX, TSX, and Vue files into browser-compatible JavaScript on the fly during the request process. It handles Node.js built-in resolution by mapping internal modules to browser-compatible polyfills and manages dependency versioning and aliasing through URL query parameters. The system optimizes delivery via request-time tree sh
SBJson is an Objective-C JSON parser and generator designed for the parsing and generation of JSON data. It functions as a strict JSON validator, enforcing rigid grammar rules to ensure input data adheres to formal specifications. The project features an incremental JSON stream parser that processes UTF8 data in chunks to extract documents without loading the entire payload into memory. It also serves as a JSON data serializer that transforms native data objects into formatted strings using deterministic key sorting. The system manages data serialization workflows and implements security mea
This project is a compatibility layer and abstraction library for building native C++ addons for Node.js. It provides a consistent C++ API that allows a single codebase to compile against multiple versions of the V8 JavaScript engine by hiding version-specific differences behind macros and inline functions. The toolkit differentiates itself through specialized wrappers and managers, including a monadic wrapper for handles to avoid explicit null checks, a persistent reference manager for objects that must survive handle scope disposal, and a buffer abstraction API for version-compatible memory
This library provides a unified, cross-platform interface for executing HTTP requests and managing network communication in Dart applications. It functions as a composable client library that automatically resolves platform-specific network implementations, ensuring consistent behavior across mobile, desktop, and web environments. The library distinguishes itself through a modular architecture that supports swappable transport layers and middleware, allowing developers to inject custom logic for logging, caching, or retries. It includes built-in support for resilient communication, such as co