Zig libraries
Notes and resources about Zig libraries.
CLI#
- parg ↗ - Lightweight argument parser for Zig.
- zig-clap ↗ - Simple command line argument parsing library.
- Zig Argument Parser ↗ - Simple-to-use argument parser with struct-based config.
- mibu ↗ - Pure Zig library for low-level terminal manipulation.
- zig-cli ↗ - Simple package for building command line apps in Zig.
- zig-arg ↗ - clap-rs inspired arg parser library for zig that supports both subcommand, nested subcommand and flag.
Web#
- h11 ↗ - HTTP/1.1 parser for Zig.
- Routez ↗ - HTTP server for Zig.
- Apple Pie ↗ - Basic HTTP server implementation in Zig.
- ZHP ↗ - HTTP server written in Zig.
- Zig Network ↗ - Small network abstraction layer around TCP & UDP.
- zig-serve ↗ - Server implementations for several protocols in Zig. Includes http(s), gemini and gopher.
- rem ↗ - HTML parsing library, written in Zig.
- zfetch ↗ - HTTP request library for Zig with HTTPS support.
DB#
- OkRedis ↗ - Zero-allocation Client for Redis 6+.
- lmdb-zig ↗ - Lightweight, fully-featured, idiomatic cross-platform Zig bindings to Lightning Memory-Mapped Database (LMDB).
- zig-sqlite ↗ - Thin wrapper around SQLite’s C API. (How I built zig-sqlite ↗) (HN ↗)
- zig-prometheus ↗ - Prometheus/VictoriaMetrics client library for Zig.
Crypto#
- charm ↗ - Zig version of the Charm crypto library.
Graphics#
- zgt ↗ - Zig GUI Toolkit.
- tvg ↗ - Tiny Vector Graphics.
- zig-cairo ↗ - Thin wrapper for the cairo 2D graphics library.
- ZGL ↗ - Zig OpenGL Bindings.
- brucelib ↗ - Monorepo of modules for programming cross-platform games, simulations, engines and editors.
- Phyz ↗ - 2D game physics for Zig.
- glTF parser ↗ - glTF 2.0 parser written in Zig, aiming to replace the use of some C/C++ libraries.
WASM#
- zee_alloc ↗ - Tiny Zig allocator primarily targeting WebAssembly.
- wasmtime-zig ↗ - Zig embedding of Wasmtime.
- wasmer-zig ↗ - Zig bindings for the Wasmer WebAssembly runtime.
- zig-wasm3 ↗ - Zig bindings (and build system integration) for Wasm3.
macOS#
- ZigKit ↗ - Native Zig bindings for low-level macOS frameworks.
Math#
- VecFns ↗ - Automatic Vector Math Functions In Zig.
Linux#
- AsyncIOUring ↗ - Event loop in Zig using io_uring and coroutines.
Embedded#
- regz ↗ - Zig code generator for microcontrollers.
- MicroZig ↗ - Unified abstraction layer and HAL for several microcontrollers.
Test#
- Marble ↗ - Metamorphic testing library for Zig.
iOS#
- Zig Deploy ↗ - Deploy your iOS apps written with Zig.
Other#
- Zig ECS ↗
- Upaya ↗ - Zig-based framework for creating game tools and helper apps.
- zalgebra ↗ - Linear algebra library for games and computer graphics.
- zld ↗ - Zig’s lld drop-in replacement.
- Mecha ↗ - Parser combinator library.
- Dida ↗ - Differential dataflow for mere mortals.
- zang ↗ - Audio synthesis.
- zig-protobuf ↗ - protobuf 3 implementation.
- zap ↗ - Asynchronous runtime with a focus on performance and resource efficiency.
- Zig itertools ↗ - Improved rewrite of the python itertools library to Zig.
- ziglyph ↗ - Unicode text processing.
- Zigstr ↗ - UTF-8 string type.
- Zig Interfaces ↗ - Dynamic dispatch for zig made easy.
- hyperia ↗ - Playground of Zig async code.
- zigimg ↗ - Create, process, read and write different image formats with Zig.
- simdjzon ↗ - Port of simdjson, a high performance JSON parser.
- zig-nodejs-example ↗ - Node.js Native Module written in Zig.
- sokol-zig ↗ - Auto-generated Zig bindings for the sokol headers.
- known-folders ↗ - Provides access to well-known folders across several operating systems.
- zig-graph ↗ - Directed graph data structure for Zig.
- ish ↗ - Sketches for Zig.
- zig-libgc ↗ - Implements a Zig allocator that uses the Boehm-Demers-Weiser conservative Garbage Collector (libgc, bdwgc, boehm-gc).
- Cosmic ↗ - Single binary tool for building graphical and cli apps in JavaScript/TS.
- zjson ↗ - Minimal JSON library with zero allocations.
- Zig Generator ↗ - Async generator type for Zig.
- ctregex.zig ↗ - Compile time regular expressions in zig.
- zoltan ↗ - Sol-inspired minimalist Lua binding for Zig. (Article ↗)
- zzz ↗ - Simple and boring human readable data format for Zig.
- ctradix ↗ - Comptime radix tree in Zig.
- protozig ↗ - Complete implementation of protobuf in Zig.
- HeaderGen ↗ - Automatically generate headers/bindings for other languages from Zig code.
- zig-libgit2 ↗ - Zig bindings to libgit2.
- Adma ↗ - General purpose, multithreaded capable slab allocator for Zig.
- Getty ↗ - Serialization framework for Zig.
- json ↗ - Serialization library for JSON.
- Concepts ↗ - Compile-time validation of type constraints.
- hzzp ↗ - I/O agnostic HTTP/1.1 parser and encoder for Zig.
- zig-yaml ↗ - YAML parser for Zig.
- inon ↗ - Data serialization format in Zig.
- nats.zig ↗ - Zig Client for NATS.
- s2s ↗ - Zig binary serialization format and library.
- uuid6-zig ↗ - UUIDv6 implemented in Zig.
- zig-docker ↗ - Zig bindings for the Docker Engine API.
- zlog ↗ - Zero-allocation log library for Zig.
- mustache-zig ↗ - Logic-less templates for Zig.
- Cuckoo Filter ↗ - Production-ready Cuckoo Filters for any C ABI compatible target.
- Zort ↗ - Implementation of 13 sorting algorithms in Zig.
- audiometa ↗ - Audio metadata/tag reading library written in Zig.
- Metron ↗ - Zig library for writing micro-benchmarks.
- Vortex ↗ - Structured concurrency in Zig.
Links#
- zigmod ↗ - Package manager for the Zig programming language.
- gyro ↗ - Zig package manager with an index, build runner, and build dependencies. (Web ↗)
- zigpkgs ↗ - Collection of zig packages built with Nix.
- Aquila ↗ - Federated package index and CI system for Zig. (Web ↗)
- Deps.zig ↗ - Dependency manager for Zig.
- Zig Package Repository ↗ - Community-maintained repository of zig packages. (Code ↗)
- zig-build-repos ↗ - Enables build.zig files to depend on git repositories.
- Zig Async Demo ↗ - Comparing concurrent code example programs between other languages and Zig.
- Minimal Web Assembly example using Zig’s build system ↗