awesome-zig
A collaborative list of awesome Zig libraries and resources.
https://github.com/zigcc/awesome-zig
Last synced: 8 days ago
JSON representation
-
Audio Processing
-
Utility
- hexops/mach-sysaudio - platform low-level audio IO in Zig.
-
-
Command Line and Argument Parser
-
Utility
- MasterQ32/zig-args - to-use argument parser with struct-based config.
-
-
Data & Science
-
Database
- tigerbeetle - The distributed financial accounting database designed for mission critical safety and performance. [tigerbeetle.com](https://tigerbeetle.com/).
- vrischmann/zig-sqlite - Zig-SQLite is a small wrapper around SQLite's C API, making it easier to use with Zig.
- leroycep/sqlite-zig - This repository has Zig bindings for SQLite. It tries to make the SQLite c API more Ziggish.
- mjoerussell/zdb - A library for interacting with databases in Zig.
- kristoff-it/redis-cuckoofilter - Hashing-function agnostic Cuckoo filters for Redis.
- kristoff-it/zig-okredis - Zero-allocation Client for Redis 6+.
- vrischmann/zig-cassandra - Client for Cassandra 2.1+.
- speed2exe/myzql - MySQL and MariaDB driver in native Zig.
- karlseguin/pg.zig - Native PostgreSQL driver / client for Zig.
- karlseguin/zuckdb.zig - A DuckDB driver for Zig.
- nDimensional/zig-sqlite - Simple, low-level, explicitly-typed SQLite bindings for Zig.
- thanos/couchbase-zig-client - A wrapper around Couchbase's c library libcoucbase.
- mailmug/zentropy - High-performance, lightweight key-value store (Redis alternative).
- Axion - High-Performance, Embeddable Storage Engine for Zig & SQLite.
- seqor/seqor - Seqor is a cost-effective, Loki compatible database for logs.
- zeno-core/zeno - High-performance embedded key-value storage engine with ART index, WAL, and sharded concurrency.
- lispking/kvdb - A lightweight, high-performance embedded key-value database written in Zig.
- seqor/seqor - Seqor is a cost-effective, Loki compatible database for logs.
-
Encryption
- gernest/base32 - Base32 encoding/decoding for Ziglang.
- deatil/zpem - A pem parse and encode library for Zig.
- deatil/zig-md2 - A MD2 hash function library for Zig.
- deatil/zig-md4 - A MD4 hash function library for Zig.
- deatil/zig-sm3 - A SM3 hash function library for Zig.
-
Large Language Model
- cgbur/LLaMa2.zig - Inference LLaMA 2 in one file of pure Zig.
- clebert/LLaMa2.zig - Inference LLaMA 2 in pure Zig.
- renerocksai/gpt4all.zig - Zig build for a terminal-based chat client for an assistant-style large language model with ~800k GPT-3.5-Turbo Generations based on LLaMA.
- EugenHotaj/zig_gpt2 - Neural Network Inference Engine in Zig. GPT2 inference engine written in Zig. The inference engine can run [NanoGPT](https://github.com/karpathy/nanoGPT).
- ollama-zig - Ollama Zig library.
- CogitatorTech/zigformer - ZigFormer is a transformer-based LLM implemented in pure Zig.
- llama.cpp - Inference of [LLaMA](https://github.com/facebookresearch/llama) model in pure C/C++.
- nullclaw/nullclaw - Fastest, smallest, and fully autonomous AI assistant infrastructure written in Zig.
-
Linear Algebra
- kooparse/zalgebra - Linear algebra library for games and real-time graphics.
- ziglibs/zlm - Zig linear mathematics.
- omaraaa/VecFns - Automatic Vector Math Functions In Zig.
- Laremere/alg - Algebra for Zig.
- BanchouBoo/algae - Zig math library focused on game development.
- JungerBoyo/zmath - Simple linear algebra library written in Zig.
- pblischak/zprob - A Zig Library for Probability Distributions.
-
Machine Learning
- zerotech-studio/zack - Backtesting engine for trading strategies, written in Zig.
- Thomvanoorschot/zigma - Algorithmic trading framework leveraging Actor based concurrency and a WebAssembly client.
-
Machine Learning Framework
- maihd/zten - Tensor library for Zig, based on ggml.
- rockcarry/ffcnn - A cnn neural network inference framework, written in 600 lines C language.
- xboot/libonnx - A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.
- kraiskil/onnx2c - Open Neural Network Exchange to C compiler. Onnx2c is a [ONNX](https://onnx.ai/) to C compiler. It will read an ONNX file, and generate C code to be included in your project. Onnx2c's target is "Tiny ML", meaning running the inference on microcontrollers.
- candrewlee14/zgml - Tensor library for machine learning, inspired by ggml.
- andrewCodeDev/ZEIN - Zig-based implementation of tensors.
- recursiveGecko/onnxruntime.zig - Experimental Zig wrapper for ONNX Runtime with examples (Silero VAD, NSNet2).
- Zigrad - A deep learning framework built on an autograd engine with high level abstractions and low level control. Trains neural networks 2.5x faster than PyTorch on Apple Silicon and 1.5x faster on CPU.
- SilasMarvin/dnns-from-scratch-in-zig - A very simple implementation of deep neural networks written in the Zig programming language.
- zml - A high performance machine learning stack for Zig.
- ggml-zig - A replacement for [ggml: Tensor library for machine learning](https://github.com/ggerganov/ggml) written in Zig.
-
Scientific Computation
- attron/astroz - Spacecraft and Astronomical Toolkit.
-
Sensor and Communication Interface
- ZigEmbeddedGroup/serial - Serial port configuration library for Zig.
- tetsu-koba/v4l2capture - v4l2 video capturer written in Zig.
- kdchambers/reel - Screen capture software for Linux / Wayland.
- ringtailsoftware/commy - Serial terminal monitor for Linux, Mac and Windows.
- MasterQ32/zig-network - A smallest-common-subset of socket functions for crossplatform networking, TCP & UDP.
-
-
Data Structure and Algorithm
-
Linker
-
-
FFI Bindings
-
Utility
-
Zigged Project
-
-
File format processing
-
Linker
- getty-zig/getty
- getty-zig/json
- ziglibs/tres - based JSON parser.
- ducdetronquito/hppy
- m-r-hunt/tjp
- tiehuis/zig-ryu
-
-
Fundamentals
-
Community
- Zigistry/Zigistry - A place where you can find all the libraries that suit your Zig lang needs.
- Ziggit - The Zig forum.
- Discord - Official Zig Discord server.
- ZigCC - Chinese Zig community.
- Reddit - The Zig subreddit.
- Zig Monthly - Articles and news from the community.
- Discord - Official Zig Discord server.
- ZigCC - Chinese Zig community.
-
Documentation and Testing
- kristoff-it/zig-doctest - A tool for testing snippets of code, useful for websites and books that talk about Zig.
- ryo-zen/zig-docs-mcp - MCP server providing access to Zig language docs, stdlib references, and working code examples.
-
Learning Resources
- Zig Language Reference - An introduction to the language with examples.
- Zig In-depth Overview - In-depth Overview of the Zig philosophy.
- Zig cookbook - A collection of simple Zig programs that demonstrate good practices to accomplish common programming tasks.
- Zig in 30 minutes - A half-hour to learn Zig.
- Learning Zig - This guide aims to make you comfortable with Zig. It assumes prior programming experience, though not in any particular language.
- Zig 圣经 - Chinese 简单、快速地学习 Zig.
- Ziglings - Learn the Zig programming language by fixing tiny broken programs.
- Introduction to Zig - a project based book - This is an open book by author `Pedro Duarte Faria` that provides an introduction to the Zig programming language, which is a new general-purpose, and low-level language for building robust and optimal software.
- Systems Programming with Zig - This book teaches how to write quality, useful Zig applications without relying on libraries or frameworks.
- Zen of Zig - Interactive Zig book, teaching from beginner to intermediate level with playgrounds and illustrations. Also available on [Leanpub](https://leanpub.com/zenofzig)
- Изучаем язык программирования Zig - Russian textbook and blog about Zig.
- Zig Guide - Get started with the Zig programming language.
-
Linker
- kubkon/bold - A drop-in replacement for Apple’s system linker `ld`.
-
Linters
- DonIsaac/zlint - Linter for the Zig programming language.
- KurtWagner/zlinter - Zig linter that is integrated from source into your `build.zig`.
- forketyfork/zwanzig - Static analyzer for Zig with CFG-based checks (leaks, double-free, optional unwrap, stack escapes).
-
Package and Version Manager
- Getzig - An idea for a Zig version manager along the lines of gradle wrapper.
- zigcc/asdf-zig - Zig plugin for asdf version manager. [https://github.com/asdf-vm/asdf](https://github.com/asdf-vm/asdf)
- marler8997/zigup - Download and manage Zig compilers.
- zigtools/zpm - Zig package manager helper.
- jsomedon/night.zig - Simple tool that just install & update Zig nightly.
- mitchellh/zig-overlay - Nix flake for the Zig compiler.
- Cloudef/zig2nix - Flake for packaging, building and running Zig projects.
- Cloudef/nix-zig-stdenv - Zig based cross-compiling toolchain.
- joachimschmidt557/zigpkgs - A collection of Zig packages built with Nix.
- nektro/zigmod - A package manager for the Zig programming language.
- vezel-dev/zig-sdk - An MSBuild SDK for building Zig, C, and C++ projects using the Zig compiler.
- tristanisham/zvm - Lets you easily install/upgrade between different versions of Zig. ZLS install can be included. (written in Go).
- nix-community/zon2nix - Convert dependencies in build.zig.zon files to Nix expressions.
- rosarp/nu-zigup - Download & manage Zig compilers & zls binaries. Script is written in nushell.
- weezy20/zv - Fast Zig/ZLS version manager + project starter kit written in Rust. Binaries available for macOS/Windows/Linux.
- mlugg/setup-zig - Install a Zig compiler for usage in GitHub Actions workflows.
- asdf-community/asdf-zig - Zig plugin for the [asdf](https://github.com/asdf-vm/asdf) version manager.
- lispking/zvm - A fast, dependency-free version manager for Zig written in Zig.
- justrach/nanobrew - A fast macOS package manager written in Zig.
- hendriknielaender/zvm - A fast and simple Zig version manager written in Zig.
-
Performance Benchmark
- lucascompython/zigXrustXc - Performance of Zig vs Rust vs C.
- zackradisic/rust-vs-zig - This is an experiment to evaluate Rust vs. Zig by writing a bytecode interpreter with GC in both languages and comparing them.
- CoalNova/BasicCompare - A basic comparative analysis of C, C++, Rust, and Zig.
- ziglang/gotta-go-fast - Performance Tracking for Zig.
- hendriknielaender/zBench - Simple benchmarking library.
- andrewrk/poop - CLI Performance Observer written in Zig.
-
Text Editors
- zigtools/zls - The @ziglang language server for all your Zig editor tooling needs, from autocomplete to goto-def! [installation](https://zigtools.org/zls/install/).
- Tetralux/sublime-zig - My own, more lightweight, syntax highlighting for the Zig Programming Language.
- jinzhongjia/znvim - Neovim remote rpc client implementation with Zig.
- FalsePattern/ZigBrains - JetBrains IDEs (CLion, IntelliJ IDEA and others) plugin for Zig.
- jinzhongjia/zig-lamp - Improve the Zig development experience in Neovim.
- neurocyte/flow - Flow Control - a programmer's text editor written in Zig.
- ziglang/sublime-zig-language - Zig language support for Sublime Text.
- ziglang/vscode-zig - Zig language support for VSCode.
- ziglang/zig.vim - Vim configuration for Zig.
- ziglang/zig-mode - Zig mode for Emacs.
- zed-extensions/Zig - Zig extension for Zed editor.
- FalsePattern/ZigBrains - JetBrains IDEs (CLion, IntelliJ IDEA and others) plugin for Zig.
-
Utility
- fearedbliss/Honeydew - A simple snapshot cleaner for OpenZFS written in Zig.
- fearedbliss/Cantaloupe - A simple backup replication tool for OpenZFS written in Zig.
- Arnau478/hevi - A minimalistic and modernized hex viewer, written in Zig.
- hspak/geteltorito-zig - Re-write of geteltorito in Zig.
- NilsIrl/dockerc - Container image to single executable compiler.
- nrdmn/ilo_license_key - This library validates HP iLO license keys.
- shepherdjerred/macos-cross-compiler - Cross-compilation toolchain for Zig users to compile binaries for macOS on Linux.
- rockorager/zzdoc - A scdoc-compatible manpage compiler for use in build.zig.
- gaskam/workspace - A powerful Zig-based tool to manage all your GitHub repositories with ease.
- BrookJeynes/jido - Jido (formerly known as zte) is a small terminal file explorer, written in Zig.
- ghostty - Modern terminal emulator written in Zig.
- rockorager.dev/lsr - Efficient and fast `ls` alternative, written in Zig.
- gauravnumber/move.zig - Zig-based mv with auto conflict resolution.
- ghext - A small library for extracting head commits from Git repositories.
- deatil/zig-dotenv - A parse and set env library for Zig.
- ktarasov/zigrep - A training project on the implementation of the similarity of the grep utility in Linux in the Zig language.
- xcaeser/zig-dotenv - A powerful Zig library for loading, parsing, and managing environment variables from .env files.
- Decryptu/zigdex - Display Pokémon sprites in your terminal. A Zig rewrite of pokeget.
- zmx - Session persistence for terminal processes.
- forketyfork/architect - A flexible terminal grid for multi-agent AI workflows.
- zlist - A simple, colorful alternative to ls built with Zig.
- midasdf/zt - Ultra-fast, minimal terminal emulator written in Zig with fbdev, X11, Wayland, and macOS backends.
- zdu - A fast, low-memory TUI disk usage analyzer written in Zig.
-
-
General Operating System
-
Linker
- andrewrk/HellOS - The "hello world" x86 kernel example.
- davidgm94/birth
-
-
GPU Computing
-
Zigged Project
- hexops/mach-gpu - platform graphics API for Zig (desktop, mobile, and web) with unified low-level graphics & compute backed by Vulkan, Metal, D3D12, and OpenGL (as a best-effort fallback.)
- hexops/mach-gpu-dawn - compiled with Zig into a single static library.
- ckrowland/simulations
-
-
Graphics Library
-
Zigged Project
- andrewrk/SDL
- MasterQ32/zig-opengl
- MasterQ32/zero-graphics
- hexops/mach-glfw - fuss installation, cross compilation, and more.
- hexops/mach-glfw - fuss installation, cross compilation, and more.
-
-
GUI
-
Zigged Project
- LVGL
- AWTK - platform embedded GUI). [AWTK](https://github.com/zlgopen/awtk/blob/master/README.md), the abbreviation of Toolkit AnyWhere, is an open source GUI engine developed by [ZLG](https://www.zlg.cn/).
- Nuklear - header ANSI C immediate mode cross-platform GUI library. [immediate-mode-ui.github.io](https://immediate-mode-ui.github.io/Nuklear/doc/index.html)
-
-
Interoperability
-
Build with Zig
- here
- libz - Library zlib with the build system replaced by Zig.
- libvorbis - Library libvorbis with the build system replaced by Zig.
- libogg - Library libogg with the build system replaced by Zig.
- libebur128 - Library libebur128 with the build system replaced by Zig.
- pulseaudio - Library pulseaudio with the build system replaced by Zig.
- libchromaprint - Library chromaprint with the build system replaced by Zig.
- openssl - TLS/SSL and crypto library (uses Zig Build).
- wolfssl - Library WolfSSL Using Zig Build.
- fmt - A modern formatting library (uses Zig build-system).
- boost unordered - Boost.org unordered module (uses Zig build).
- boost async - Coroutines for C++20 & asio (uses Zig build for testing).
- json - Library JSON for Modern C++ (uses Zig build-system).
- context - Library `boost.context` using Zig build.
- fiber - Userland threads using Zig build.
- outcome - Provides very lightweight `outcome<T>` and `result<T>` (non-Boost edition) (uses Zig build-system).
- Standalone - An Asio standalone C++ HTTP/S Server (uses Zig build-system).
- asio - The Asio C++ Library with Zig build-system.
- observable - Unique-ownership smart pointers with observable lifetime.
- Catch2 - A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch) - uses Zig build-system.
- cppfront - Build Cppfront with Zig build.
- hana - Your standard library for metaprogramming.
- intrusive - Boost.org intrusive module.
- range - The Range library for C++14/17/20, basis for C++20's std::ranges.
- benchmark - A microbenchmark support library. First posted on [Ziggit](https://ziggit.dev/t/is-there-a-list-of-projects-that-has-been-zigged/1785).
- boring_tls - Google's BoringTLS client and server. Adds TLS to any (including non standard library) TCP/HTTP traffic.
- libxlsxwriter - A C library for creating Excel XLSX files, build system replaced by Zig.
- libui-ng - Library libui-ng (a portable GUI library for C) with the build system replaced by Zig.
- libmp3lame - Library libmp3lame with the build system replaced by Zig.
-
Programming Languages
Categories
Language Essentials
106
Multimedia & Graphics
105
Fundamentals
87
Network & Web
82
Systems Programming
70
Data & Science
57
Interoperability
45
Tools
10
File format processing
6
Graphics Library
5
FFI Bindings
5
GPU Computing
3
GUI
3
Robot Operating System
3
Machine Learning
3
Web3 Framework
3
General Operating System
2
Audio Processing
1
Command Line and Argument Parser
1
Data Structure and Algorithm
1
Web Framework
1
Sub Categories
Game Development
41
Build with Zig
32
File Format Processing
30
Network
28
Utility
28
Graphics Library
26
Data Structure and Algorithm
23
Operating Systems
22
Zigged Project
22
Package and Version Manager
22
Web Framework
21
Database
18
Text Editors
18
Web3 Framework
18
Embedded Development
18
GUI
17
Memory Allocator and Management
15
Command Line and Argument Parser
13
FFI Bindings
13
WebAssembly
13
Linker
12
Learning Resources
12
Machine Learning Framework
11
Date, Time and Timezones
11
Emulators
11
Compilers and Interpreters
10
Image and Video Processing
9
GPU Computing
9
Large Language Model
8
Community
8
Linear Algebra
7
Logging Processing
6
Asynchronous Runtime
6
Performance Benchmark
6
String Processing
5
Sensor and Communication Interface
5
Encryption
5
Linters
4
Audio Processing
3
Documentation and Testing
2
Kernel and Containers
2
Machine Learning
2
Parser Library
2
Runtime
1
Browser
1
Multithreading
1
Scientific Computation
1
Finite State Machine
1
Keywords
zig
292
zig-package
131
ziglang
80
zig-library
36
wasm
17
c
15
gamedev
13
cpp
12
embedded
10
graphics
9
webassembly
9
gui
8
linux
8
cpp-library
8
osdev
7
kernel
7
operating-system
6
cplusplus
6
http
6
cli
6
argument-parser
6
networking
6
bindings
6
library
6
math
6
opengl
6
parser
6
arm
5
bare-metal
5
terminal
5
command-line
5
build
5
tls
5
cryptography
5
sdl2
4
server
4
lua
4
framework
4
time
4
nuttx
4
windows
4
version-manager
4
2d
4
cross-platform
4
vulkan
4
boost-libraries
4
async
4
web
4
blockchain
4
crypto
4