awesome-zig
A collection of awesome projects in Zig.
https://github.com/zigcc/awesome-zig
Last synced: 7 days ago
JSON representation
-
Learning Resources
- Learning Zig - This guide aims to make you comfortable with Zig. It assumes prior programming experience, though not in any particular language.
- 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.
- Zig 圣经 - Chinese 简单、快速地学习 Zig.
- 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.
- Ziglings - Learn the Zig programming language by fixing tiny broken programs.
- Systems Programming with Zig - This book teaches how to write quality, useful Zig applications without relying on libraries or frameworks.
-
Tools
-
Package and Version Manager
- Getzig - An idea for a Zig version manager along the lines of gradle wrapper.
- mitchellh/zig-overlay - Nix flake for the Zig compiler.
- nektro/zigmod - A package manager for the Zig programming language.
- tristanisham/zvm - Lets you easily install/upgrade between different versions of Zig. ZLS install can be included.
- goto-bus-stop/setup-zig
- nix-community/zon2nix - Convert dependencies in build.zig.zon files to Nix expressions.
- marler8997/zigup - Download and manage Zig compilers.
- zigcc/asdf-zig - Zig plugin for asdf version manager. [https://github.com/asdf-vm/asdf](https://github.com/asdf-vm/asdf)
- zigtools/zpm - Zig package manager helper.
- korandoru/setup-zig
- jsomedon/night.zig - Simple tool that just install & update Zig nightly.
- 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.
- vezel-dev/zig-sdk - An MSBuild SDK for building Zig, C, and C++ projects using the Zig compiler.
- mlugg/setup-zig - Install a Zig compiler for usage in GitHub Actions workflows.
- rosarp/nu-zigup - Download & manage Zig compilers & zls binaries. Script is written in nushell.
- weezy20/zv - Fast Zig version manager + project starter. Written in Rust. Bins available for macOS/windows/linux.
-
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.
- 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.
- xcaeser/zig-dotenv - A powerful Zig library for loading, parsing, and managing environment variables from .env files.
- rockorager.dev/lsr - Efficient and fast `ls` alternative, written in Zig.
- gauravnumber/move - Zig-based mv with auto conflict resolution.
- BeigeHornet151/zig-dotenv
- 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.
-
Text Editors
- ziglang/zig.vim
- zigtools/zls - The @ziglang language server for all your Zig editor tooling needs, from autocomplete to goto-def! [installation](https://zigtools.org/zls/install/)
- ziglang/zig-mode
- ziglang/vscode-zig
- ice1000/intellij-zig
- Tetralux/sublime-zig - My own, more lightweight, syntax highlighting for the Zig Programming Language.
- ziglang/sublime-zig-language
- isaachier/ztags
- jinzhongjia/znvim - Neovim remote rpc client implementation with Zig.
- neurocyte/flow - Flow Control - a programmer's text editor written in Zig.
- FalsePattern/ZigBrains - JetBrains IDEs (CLion, IntelliJ IDEA and others) plugin for Zig.
- jinzhongjia/zig-lamp - Improve the Zig development experience in Neovim.
- 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.
-
Linters
- nektro/ziglint
- DonIsaac/zlint - Linter for the Zig programming language.
- KurtWagner/zlinter - Zig linter that is integrated from source into your `build.zig`.
-
Documentation and Testing
- kristoff-it/zig-doctest - A tool for testing snippets of code, useful for websites and books that talk about Zig.
-
Linker
- kubkon/bold - A drop-in replacement for Apple’s system linker `ld`.
-
-
File format processing
-
Linker
- MahBestBro/regex - A single file regex library written in and for Zig.
- getty-zig/json
- getty-zig/getty
- ziglibs/known-folders - Provides access to well-known folders across several operating systems.
- travisstaloch/protobuf-zig - A protocol buffers implementation in Zig.
- ziglibs/tres - based JSON parser.
- Arwalk/zig-protobuf - A protobuf 3 implementation for Zig.
- aeronavery/zig-toml - A TOML parser written in Zig.
- kivikakk/koino - CommonMark + GFM compatible Markdown parser and renderer.
- tiehuis/zig-regex - A regex implementation for the Zig programming language.
- jecolon/ziglyph - Unicode text processing for the Zig programming language.
- kubkon/zig-yaml - YAML parser for Zig.
- nektro/zig-json - A JSON library for inspecting arbitrary values.
- karlseguin/log.zig - A structured logger for Zig.
- mattyhall/tomlz - A well-tested TOML parsing library for Zig.
- mitchellh/zig-libxml2 - Libxml2 built using Zig build system.
- sam701/zig-toml - Zig TOML (v1.0.0) parser.
- ziglibs/s2s - A Zig binary serialization format.
- goto-bus-stop/ziguid - GUID parsing/stringifying with Zig.
- ducdetronquito/hppy
- kivikakk/libpcre.zig - Zig bindings to libpcre.
- m-r-hunt/tjp
- tiehuis/zig-ryu
- vi/zigmkv - A \[wip\] Matroska/webm (mkv) parser in Zig.
- winksaville/zig-parse-number - Implement ParseNumber which can parse any TypeId.Int or TypeId.Float.
- demizer/markzig - Pure Zig Markdown Parser.
- thejoshwolfe/hexdump-zip - Produce an annotated hexdump of a zipfile.
- javiorfo/prettizy - Zig library to prettify JSON and XML strings.
- javiorfo/zig-epub - Minimal Zig library for creating EPUB files.
- ezequielramis/zimdjson - Parsing gigabytes of JSON per second. Zig port of simdjson with fundamental features.
- rawC1nnamon/elfy.zig - Tiny and fast ELF parsing library for Zig.
- xcaeser/glob.zig - Fast and reliable glob pattern matching in pure Zig.
- kobolds-io/gnoll - Zig application configuration handled well.
-
-
FFI Bindings
-
Zigged Project
- 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.
- nasm
- 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 uses 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 w/ 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.
- zig-libxml2
- benchmark - A microbenchmark support library.
- libffi
- libffi
- boring_tls - Google's BoringTLS client and server. Adds TLS to any (including non standard library) TCP/HTTP traffic.
-
Linker
- mitchellh/zig-objc - Objective-C runtime bindings for Zig (Zig calling ObjC).
- natecraddock/ziglua - Zig bindings for the Lua C API.
- katafrakt/zig-ruby - This repo contains an experiment of building a Ruby extension with Zig programming language. It implements a slightly altered version of 100 doors from Rosetta Code.
- lassade/c2z - C++ to Zig bindings and transpiler.
- floooh/sokol-zig - Zig bindings for the sokol headers.
- jiacai2050/zig-curl - Zig bindings for libcurl.
- jiacai2050/zig-rocksdb - Zig bindings for RocksDB.
- jiacai2050/zig-jemalloc - Zig allocator baked by jemalloc.
- arshidkv12/zig-php - Write PHP extension in Zig.
- sackosoft/zig-luajit - Zig bindings for the LuaJIT C API.
- OnlyF0uR/pqc-zig - Zig bindings and abstractions for [PQClean](https://github.com/PQClean/PQClean/), post-quantum cryptography.
-
Utility
-
-
Machine Learning
-
Machine Learning Framework
- maihd/zten - Tensor library for Zig, based on ggml.
- 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.
- xboot/libonnx - A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.
- rockcarry/ffcnn - A cnn neural network inference framework, written in 600 lines C language.
- 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).
- SilasMarvin/dnns from scratch in Zig - A very simple implementation of deep neural networks written in the Zig programming language.
- 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.
-
Large Language Model
- cgbur/LLaMa2.zig - Inference LLaMA 2 in one file of 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).
- clebert/LLaMa2.zig - Inference LLaMA 2 in pure Zig.
- ollama-zig - Ollama Zig library.
- CogitatorTech/zigformer - ZigFormer is an transformer-based LLM implemented in pure Zig.
- llama.cpp - Inference of [LLaMA](https://github.com/facebookresearch/llama) model in pure C/C++.
-
Zigged Project
- ggml-zig
- Gonzih/onnx-worker.zig - worker.zig
- ggml
-
-
Performance Benchmark
-
Large Language Model
- lucascompython/zigXrustXc - Performance of Zig vs Rust vs C.
- andrewrk/poop - CLI Performance Observer written in Zig.
- ziglang/gotta-go-fast - Performance Tracking for Zig.
- 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.
- hendriknielaender/zBench - Simple benchmarking library.
-
-
Data Structure and Algorithm
-
Linker
- jakubgiesler/VecZig - Vector implementation in Zig.
- TheAlgorithms/Zig - Collection of Algorithms implemented in Zig.
- alichraghi/zort - Zort: Sorting algorithms in Zig.
- Srekel/zig-sparse-set - Sparse sets for Zig, supporting both SOA and AOS style.
- mitchellh/zig-graph - Directed graph data structure for Zig.
- ok-ryoko/multiring.zig - Singly linked, cyclic and hierarchical abstract data type in Zig.
- JacobCrabill/btree.zig - Behavior Tree library written in Zig.
- DutchGhost/ArrayVec - A library with an ArrayList-like API, except its a static array.
- emekoi/deque.zig - A lock free chase-lev deque for Zig.
- kristoff-it/zig-cuckoofilter - Production-ready Cuckoo Filters for any C ABI compatible target.
- BarabasGitHub/LZig4 - Implementing lz4 in Zig.
- marijnfs/zigtimsort - TimSort implementation for Zig.
- Sahnvour/zig-containers - A set of containers for Zig.
- booniepepper/zig-data-structures - Home to some experiments in Zig data structures.
- deckarep/ziglang-set - A generic and general purpose Set implementation for the Zig language.
- yamafaktory/hypergraphz - HypergraphZ - A Hypergraph Implementation in Zig.
- ramsyana/Zig-Math-Algorithms - A collection of math algorithms in Zig—primes, Fibonacci, GCD, Euler's Totient, & more! Perfect for learning Zig & math.
- williamw520/toposort - Topological sort library that produces topological ordered nodes and dependence-free subsets.
- kobolds-io/stdx
- hello-algo-zig - Zig programming language codes for the famous public project [《Hello, Algorithm》|《 Hello,算法 》](https://github.com/krahets/hello-algo) about data structures and algorithms.
- CogitatorTech/ordered - A sorted collection library (sorted sets and sorted maps) for Zig.
- kobolds-io/stdx - Helpful extensions to the Zig standard library.
-
-
WebAssembly
-
Large Language Model
- thi.ng/wasm-api - Modular, extensible API bridge and infrastructure for hybrid JS & WebAssembly projects.
- zig-wasi - Minimal WASI Interpreter.
- zigwasm/wasm-zig - Common WebAssembly runtime binding to C API.
- zware - Zig WebAssembly Runtime Engine. zware is a library for executing WebAssembly embedded in [Zig](https://ziglang.org/) programs.
- zigwasm/wasmtime-zig - Zig embedding of Wasmtime.
- wazm - WebAssembly Zig Machine.
- zig-wasm-dom - Zig + WebAssembly + JS + DOM.
- mitchellh/zig-js - Access the JS host environment from Zig compiled to WebAssembly.
- sleibrock/zigtoys - All about Zig + WebAssembly and seeing what we can do. [sleibrock.github.io/zigtoys/](https://sleibrock.github.io/zigtoys/)
- andrewrk/lua-in-the-browser - Using Zig to build lua for webassembly.
- meheleventyone/zig-wasm-test - A minimal WebAssembly example using Zig's build system.
- oltdaniel/zig-js-interplay - Seamless integration of Zig and JavaScript in WebAssembly.
- ringtailsoftware/zig-wasm-audio-framebuffer - Examples of integrating Zig and WebAssembly (and C) for audio and graphics on the web (including DOOM).
-
-
Web Framework
-
Large Language Model
- oven-sh/bun - Incredibly fast JavaScript runtime, bundler, transpiler and package manager – all in one.
- zigzap/zap - Blazingly fast web backends in Zig.
- cztomsik/tokamak - Web framework that leverages dependency injection for clean, modular application development.
- leroycep/zig-jwt - JSON Web Tokens for Zig.
- karlseguin/websocket.zig - A WebSocket implementation for Zig.
- nikneym/ws - WebSocket library for Zig ⚡.
- kivikakk/htmlentities.zig - HTML entity data for Zig.
- shritesh/zigfmt-web - Zig fmt on the web.
- floscodes/zerve - A simple framework for writing web services in Zig.
- kristoff-it/zine - Static Site Generator written in Zig.
- jetzig-framework/jetzig - Jetzig is a web framework written in Zig.
- zon-dev/zinc - Zinc is a web framework written in pure Zig with a focus on high performance, usability, security, and extensibility.
- deatil/zig-totp - A TOTP(Time-based One-Time Password) library for Zig.
- by-nir/aws-lambda-zig - Super-fast AWS Lambda runtime for Zig.
- deatil/zig-jwt - A JWT(JSON Web Token) library for Zig.
- weebsocket - WebSocket client for Zig, with minimal allocation and a `std.http`-like API.
- uzyn/passcay - Secure Passkey authentication (WebAuthn) library for Zig.
- Thomvanoorschot/backstage - Concurrent Actor framework.
- deatil/zig-paseto - A PASETO (Platform-Agnostic SEcurity TOkens) library for Zig.
- im-ng/zero - Simple and opinionated web framework written in Zig and aims to make microservices development in Zig easier.
- nurulhudaapon/zx - A full-stack web framework for Zig.
- GuneshRaj/zigar - Zigar is a web application framework for Zig that supports ASP / JSP-like template syntax with ASP-style tags.
-
Zigged Project
-
-
Web3 Framework
-
Large Language Model
- keep-starknet-strange/ziggy-starkdust - A Zig implementation of Cairo VM for Cairo, the STARK powered provable language.
- lithdew/rheia - A Blockchain written in Zig.
- Syndica/sig - A Solana Zig RPC Client implementation.
- jsign/verkle-crypto - Cryptography for Ethereum Verkle Trees.
- blockblaz/ssz.zig - A Zig implementation of the [SSZ serialization protocol](https://github.com/ethereum/eth2.0-specs/blob/dev/ssz/simple-serialize.md).
- iskyd/walle - A Bitcoin Wallet written in Zig.
- zen-eth/multiformats-zig - This is the Zig implementation of the multiformats [spec](https://github.com/multiformats/multiformats).
- zen-eth/zig-libp2p - Zig implementation of [libp2p](https://libp2p.io/), a modular network stack that allows you to build your own peer-to-peer applications.
- EclesioMeloJunior/libp2p-zig - A [libp2p](https://libp2p.io/) written in Zig.
- Raiden1411/zabi - Zabi aims to add support for interacting with Ethereum or any compatible EVM based chain.
- blockblaz/zeam - A [Beam Chain](https://github.com/blockblaz/zeam/blob/main/resources/beam.md) written in Zig.
- ch4r10t33r/hash-zig - A pure Zig implementation of hash based signatures inspired from the rust implementation.
- ch4r10t33r/zigeth - Zig package to interact with Ethereum (inspired from alloy-rs).
-
Zigged Project
- Ultra-Code/recblock
- gballet/zevem/
- ch4r10t33r/hash-zig - wagn/hash-sig
-
-
GUI
-
Zigged Project
- 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)
- 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/).
-
Large Language Model
- Capy - Build one codebase and get native UI on Windows, Linux and Web. [capy-ui.org](https://capy-ui.org/)
- david-vanderson/dvui - Easy to Integrate Immediate Mode GUI for Zig.
- lupyuen/pinephone-lvgl-zig - LVGL for PinePhone (and WebAssembly) with Zig and Apache NuttX RTOS. [lupyuen.github.io/articles/lvgl2](https://lupyuen.github.io/articles/lvgl2)
- lupyuen/zig-lvgl-nuttx - Zig LVGL Touchscreen App on Apache NuttX RTOS.
- kassane/qml_zig - QML bindings for the Zig programming language.
- Aransentin/ZWL - A Zig Windowing Library.
- MoAlyousef/zfltk - Zig bindings for the FLTK gui library.
- batiati/IUPforZig - IUP (Portable User Interface Toolkit) bindings for the Zig language.
- donpdonp/zootdeck - Fediverse GTK Desktop Reader. [donpdonp.github.io/zootdeck/](https://donpdonp.github.io/zootdeck/)
- ziglibs/positron - A web renderer frontend for Zig applications.
- webui-dev/zig-webui - Use any web browser or WebView as GUI, with your preferred language in the backend and HTML5 in the frontend, all in a lightweight portable lib.
- star-tek-mb/zig-tray - Create tray applications with Zig.
- rcalixte/libqt6zig - Qt 6 for Zig.
- kotsutsumi/zylix - Zig powered cross-platform UI framework with Virtual DOM.
-
-
Audio Processing
-
Linker
- orhun/linuxwave - Generate music from the entropy of Linux 🐧🎵. [orhun.dev/linuxwave/](https://orhun.dev/linuxwave/)
- Hejsil/zig-midi - Zig-midi.
-
Utility
- hexops/mach-sysaudio - platform low-level audio IO in Zig.
-
-
Game Field
-
Large Language Model
- Mach - A game engine & graphics toolkit for the future. machengine.org.
- zig-gamedev/zig-gamedev - Building game development ecosystem for @ziglang!
- TM35-Metronome/metronome - A set of tools for modifying and randomizing Pokémon games. [tm35-metronome.github.io/](https://tm35-metronome.github.io/)
- zPSP-Dev/Zig-PSP - A project to bring the Zig Programming Language to the Sony PlayStation Portable!
- wendigojaeger/ZigGBA - Work in progress SDK for creating Game Boy Advance games using Zig programming language.
- thejoshwolfe/legend-of-swarkland - Turn-based action fantasy puzzle game inspired by NetHack and Crypt of the Necrodancer. [wolfesoftware.com/legend-of-swarkland/](https://wolfesoftware.com/legend-of-swarkland/)
- andrewrk/tetris - A simple tetris clone written in Zig programming language. [www.youtube.com/watch?v=AiintPutWrE](https://www.youtube.com/watch?v=AiintPutWrE)
- ryupold/zecsi - Small game framework made with Zig utilizing the awesome raylib.
- prime31/zig-gamekit - Companion repo for Zig-renderkit for making 2D games.
- Jack-Ji/jok - A minimal 2d/3d game framework for Zig.
- star-tek-mb/Paradise - Paradise is a WebAssembly first game engine written in Zig.
- zkburke/quanta - A game engine/framework written in and for Zig.
- DanB91/Zig-Playdate-Template - Starter code for a Playdate program written in Zig.
- foxnne/aftersun - Top-down 2D RPG.
- 4imothy/termy48 - A 2048 game to run in terminal.
- andrewrk/clashos - Multiplayer arcade game for bare metal Raspberry Pi 3 B+.
- Srekel/zag - Game dev project written in Zig and C.
- Akuli/curses-minesweeper - Minesweeper game written in curses with Zig.
- emekoi/ziglet - A small Zig game library.
- kristianhasselknippe/zig-game-engine - Learning Zig through game engine.
- TM35-Metronome/tm35-nds - A library for working with Nintendo DS roms.
- fabioarnold/snake-zig - A simple snake game written in the Zig programming language using OpenGL 2.
- Stenodyon/blink - A game about building logic with lasers.
- tiehuis/zstack - Line-race tetris mode in Zig.
- godot-zig/godot-zig - Zig bindings for Godot 4.
- Avokadoen/ecez - An archetype based ECS library written in pure Zig.
- nitanmarcel/ScriptHookVZig - Library to write GTA V mods in Zig.
- PixelGuys/Cubyz - Voxel sandbox game with a large render distance, procedurally generated content and some cool graphical effects.
- deckarep/dungeon-rush - An SDL snake style game ported to Zig. Originally written in C.
- ringtailsoftware/zoridor - Zoridor, a Quoridor game for terminal and web with a machine opponent.
- ringtailsoftware/zigtris - Zigtris, a terminal tetris.
- ringtailsoftware/zero-jetpack - Zero-Jetpack a web game about Ziguanas carrying eggs.
- six519/YieArKUNGFUZig - A Yie Ar Kung-Fu clone created in Zig with raylib.
- ajTronic/zetr - An aesthetic tetris clone for the terminal written in Zig.
- captkirk88/zevy-ecs - ECS similar to rust Bevy supporting very similar systems params support + more.
- MasterQ32/Ziguana-Game-System - A retro-style gaming console running on bare x86 metal written in Zig.
- captkirk88/zevy-raylib - Framework for building games in Zig using raylib-zig and zevy-ecs.
- darltrash/zcutenet - A cute_net.h binding and wrapper for Zig, for realtime networking.
-
-
Database
-
Large Language Model
- tigerbeetle - The distributed financial accounting database designed for mission critical safety and performance. [tigerbeetle.com](https://tigerbeetle.com/)
- speed2exe/myzql - MySQL and MariaDB driver in native Zig.
- 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+.
- 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.
-
-
Embedded Development
-
Linker
- ZigEmbeddedGroup/microzig - Unified abstraction layer and HAL for several microcontrollers.
- ZigEmbeddedGroup/stmicro-stm32 - HAL for stm32 (STMicro) devices.
- ZigEmbeddedGroup/raspberrypi-rp2040 - MicroZig Hardware Support Package for Raspberry Pi RP2040.
- ZigEmbeddedGroup/regz - Generate Zig code from ATDF or SVD files for microcontrollers.
- nmeum/zig-riscv-embedded - Experimental Zig-based CoAP node for the HiFive1 RISC-V board.
- lupyuen/pinephone-nuttx - Apache NuttX RTOS for PinePhone. Apache NuttX is a lightweight Real-Time Operating System (RTOS) that runs on PINE64 PinePhone. [lupyuen.github.io/articles/what](https://lupyuen.github.io/articles/what)
- lupyuen/zig-bl602-nuttx - Zig on RISC-V BL602 with Apache NuttX RTOS and LoRaWAN.
- leecannon/zig-sbi - Zig wrapper around the RISC-V SBI specification.
- eastonman/zesty-core - A RISC-V OS written in Zig.
- markfirmware/zig-bare-metal-microbit - Bare metal microbit program written in Zig.
- markfirmware/zig-bare-metal-raspberry-pi - Bare metal raspberry pi program written in Zig.
- tralamazza/embedded_zig - A minimal Zig embedded ARM example (STM32F103 blue pill).
- yvt/zig-armv8m-test - Example Zig-based app for Armv8-M + TrustZone.
- hspak/brightnessztl - A CLI to control device backlight.
- justinbalexander/svd2zig - Convert System View Description (svd) files to Zig headers for baremetal development.
- mqttiotstuff/iotmonitor - PainLess, Monitor and State server for iot mqtt devices, and software agents. This daemon permit to maintain the execution of constellations of mqtt devices and associated agents.
- Elara6331/zig-gpio - A Zig library for controlling GPIO lines on Linux systems.
- ringtailsoftware/zeptolibc - Essential libc functions in Zig for freestanding targets.
- kivikakk/daintree - A/RISC-V kernel (with UEFI bootloader). An operating system plus a UEFI bootloader, all written in Zig.
-
-
Command Line and Argument Parser
-
Linker
- Hejsil/zig-clap - A simple and easy to use command line argument parser library for Zig.
- sam701/zig-cli - A simple package for building command line apps in Zig.
- BanchouBoo/accord - A simple argument parser for Zig.
- jiacai2050/zigcli - A toolkit for building command lines programs in Zig.
- PrajwalCH/yazap - The ultimate Zig library for seamless command line parsing. Effortlessly handles options, subcommands, and custom arguments with ease. [prajwalch.github.io/yazap](https://prajwalch.github.io/yazap)
- 00JCIV00/cova - Commands, Options, Values, Arguments. A simple yet robust cross-platform command line argument parsing library for Zig.
- judofyr/parg - Lightweight argument parser for Zig.
- GabrieleInvernizzi/zig-prompter - A flexible library for building interactive command line prompts.
- kioz-wang/zargs - Another Comptime-argparse for Zig.
- xcaeser/zli - Zig command-line interfaces made easy. A blazing fast CLI framework. Build ergonomic, high-performance command-line tools with Zig.
- MasterQ32/zig-args - Simple-to-use argument parser with struct-based config.
- CogitatorTech/chilli - Chilli 🌶️ is a minimalistic CLI framework for Zig.
-
Utility
- MasterQ32/zig-args - to-use argument parser with struct-based config.
-
-
Memory Allocator and Management
-
Linker
- rvcas/mpool - A memory pool library written in Zig.
- suirad/adma - A general purpose, multithreaded capable slab allocator for Zig.
- DutchGhost/zorrow - Borrowchecker in Zig. This is a userlevel implementation of borrowchk in Zig.
- fengb/zee_alloc - Tiny Zig allocator primarily targeting WebAssembly.
- Aandreba/zigrc - Zig reference-counted pointers inspired by Rust's Rc and Arc. [aandreba.github.io/zigrc/](https://aandreba.github.io/zigrc/)
- mdsteele/ziegfried - A general-purpose memory allocator for Zig.
- suirad/Seal - An allocator that wraps another allocator and detects if memory is leaked after usage.
- nsmryan/zig_sealed_and_compact - Zig functions for memory management.
- hmusgrave/zcirc - A dynamic circular buffer allocator for Zig.
- dweiller/zig-composable-allocators - Comptime-generic composable allocators.
- bcrist/Zig-TempAllocator - Arena allocator for interactive programs and simulations.
- rdunnington/zig-stable-array - Address-stable array with a max size that allocates directly from virtual memory.
- dweiller/zimalloc - A general purpose allocator for Zig, inspired by [mimalloc](https://github.com/microsoft/mimalloc).
- Hejsil/zig-gc - A super simple mark-and-sweep garbage collector written in Zig.
-
-
Misc
-
Large Language Model
- NilsIrl/dockerc - Container image to single executable compiler.
- shepherdjerred/macos-cross-compiler - Compile binaries for macOS on Linux.
- tw4452852/zbpf - Writing eBPF in Zig.
- BraedonWooding/Lazy-Zig - Linq in Zig.
- DutchGhost/maybeuninit - MaybeUninit in Zig.
- hspak/geteltorito-zig - Re-write of geteltorito in Zig.
- nrdmn/ilo_license_key - This library validates HP iLO license keys.
- rockorager/zzdoc - A scdoc-compatible manpage compiler for use in build.zig.
- rockorager/libvaxis - Modern TUI library written in Zig.
- Avokadoen/ecez_vulkan - A scene editor built on [ecez](https://github.com/Avokadoen/ecez) and Vulkan.
- attron/astroz - Spacecraft and Astronomical Toolkit.
- lightpanda-io/browser - Headless browser designed for AI and automation.
- xtxf - The Matrix screensaver in Zig.
- ghext - A small library for extracting head commits from Git repositories.
- freref/fancy-cat - PDF reader inside the terminal.
- Zigistry/Zigistry - A place where you can find all the libraries that suit your Zig lang needs.
- ghostty - Modern terminal emulator written in Zig.
- oci-spec-zig - OCI (Open Container Initiative) runtime, image and distribution spec in Zig.
- zerotech-studio/zack - Backtesting engine for trading strategies, written in Zig.
- Thomvanoorschot/zigma - Algorithmic trading framework leveraging Actor based concurrency and a WebAssembly client.
- zigcord - Typed Discord API for Zig.
- zig-plotille - Terminal plotting library using Unicode braille characters.
- Decryptu/zigdex - Display Pokémon sprites in your terminal. A Zig rewrite of pokeget.
- neurosnap/zmx - Session persistence for terminal processes.
-
-
Compilers and Interpreters
-
Linker
- Aro - A C compiler with the goal of providing fast compilation and low memory usage with good diagnostics.
- buzz - A small/lightweight statically typed scripting language.
- fubark/cyber - Fast and concurrent scripting.
- squeek502/zua - An implementation of Lua 5.1 in Zig, for learning purposes.
- fury - A gradual, safe systems language.
- Fun - A statically-typed language that transpiles to C, combining safety and performance with C's efficiency.
- Vexu/bog - Small, strongly typed, embeddable language.
- Element 0 - A small embeddable Lisp dialect written in Zig.
-
-
Image and Video Processing
-
Linker
- kassane/libvlc-zig - Zig bindings for libVLC media framework.
- zigimg/zigimg - Zig library for reading and writing different image formats.
- dmtrKovalenko/odiff - ODiff - A very fast SIMD-first image comparison library (with Node.js API).
- marler8997/image-viewer - An image-viewer experiment written in Zig.
- bfactory-ai/zignal - Image processing library in Zig, heavily inspired by dlib.
- ryoppippi/zigcv - Opencv bindings for Zig.
- briqn-sinquin/mimg - A chained-modifiers Image processing Command-line tool.
-
-
String Processing
-
Linker
- JakubSzark/zig-string - Zig String (A UTF-8 String Library). This library is a UTF-8 compatible string library for the Zig programming language.
- jecolon/zigstr - Zigstr is a UTF-8 string type for Zig programs.
- ziglibs/string-searching - String(not limited to []const u8)-searching algorithms in Zig.
- hwu1001/zig-string - A String struct made for Zig.
-
-
Asynchronous Runtime
-
Linker
- mitchellh/libxev - A cross-platform, high-performance event loop that provides abstractions for non-blocking IO, timers, events, and more and works on Linux (io_uring or epoll), macOS (kqueue), and WebAssembly + WASI. Available as both a Zig and C API.
- lithdew/pike - Async I/O for Zig.
- kprotty/zap - An asynchronous runtime with a focus on performance and resource efficiency.
- floscodes/coroutinez - A small runtime for running tasks using coroutines in Zig.
-
-
Emulators
-
Large Language Model
- isaachier/gbemu - Zig Game Boy emulator.
- Ronsor/riscv-zig - A RISC-V emulator written in Zig.
- fengb/fundude - Gameboy emulator: Zig -> WebAssembly.
- leecannon/zriscv - RISC-V emulator in Zig.
- jtgoen/zig-chip-8 - Zig Implementation of a Chip-8 Emulator.
- paoda/zba - Game Boy Advance Emulator. Yes, I'm awful with project names.
- GrooveStomp/chip8-zig - A CHIP-8 emulator written in Zig.
- tiehuis/zig-gameboy - A gameboy emulator in Zig.
- emekoi/c8 - Chip 8 emulator in Zig.
- ringtailsoftware/zig-minirv32 - Zig RISC-V emulator with Linux and baremetal examples.
- omdxp/chip8 - Chip8 Emulator in Zig.
-
-
Sensor and Communication Interface
-
Large Language Model
- kdchambers/reel - Screen capture software for Linux / Wayland.
- ZigEmbeddedGroup/serial - Serial port configuration library for Zig.
- tetsu-koba/v4l2capture - v4l2 video capturer written in Zig.
- 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.
-
-
Network
-
Large Language Model
- Vexu/routez - Http server for Zig. [routez.vexu.eu](https://github.com/Vexu/routez)
- Vexu/zuri - URI parser for Zig.
- marler8997/netpunch - Punch Protocol.
- karlseguin/http.zig - An HTTP/1.1 server for Zig.
- ducdetronquito/h11 - I/O-free HTTP/1.1 implementation inspired by hyper/h11.
- lun-4/zigdig - Naive dns client library in Zig.
- connectFree/ZigZag - Noise Framework implementation in Zig Language for use in EVER/IP and WireGuard.
- euantorano/ip.zig - A Zig library for working with IP Addresses.
- lun-4/ziget - Simple wget in Zig without libc.
- mstroecker/zig-robotstxt - Lightweight Docker image for serving a disallow robots.txt file using the Zig programming language.
- remeh/statsd-zig - Basic DogStatsD UDP/UDS server supporting gauges and counters and sending these metrics to Datadog.
- gernest/url - This is RFC 3986 compliant url parser for Zig.
- g41797/beanstalkz - Thread-safe client library for [beanstalkd](https://pmatseykanets.github.io/beanstalkd-docs/), a queue for background job processing.
- ringtailsoftware/misshod - Experimental minimalist SSH client and server in Zig.
- rktr1998/zig-wol - Wake-on-lan CLI written in Zig.
- tardy-org/zzz - A framework for writing performant and reliable networked services in Zig. Supports HTTP and HTTPS.
- vascocosta/zircon - A simple IRC library written in Zig.
- Nyarum/zigtgshka - Memory-safe, high-performance Telegram Bot API library for Zig with zero-cost abstractions and comprehensive examples.
- Thomvanoorschot/async_zocket - Async WebSocket library for Zig, able to run concurrently on a single thread.
- Thomvanoorschot/wire - Basic TCP Server/Client able to run concurrently on a single thread.
- cocky-punch/raft - Raft consensus algorithm implemented in Zig.
- williamw520/zigjr - A lightweight Zig library for building JSON-RPC 2.0 applications.
- YUX/floo - High-throughput, token-authenticated tunneling built in Zig. Multiplexes TCP and UDP services through a Noise-protected transport with 29+ Gbit/s encrypted throughput.
-
-
Graphics Library
-
Large Language Model
- fubark/cosmic - A platform for computing and creating applications. [cosmic.ooo](https://www.cosmic.ooo/)
- ziglibs/zgl - Zig OpenGL Wrapper.
- Nelarius/weekend-raytracer-zig - A Zig implementation of the "Ray Tracing in One Weekend" book.
- cshenton/learnopengl - Zig Learn OpenGL.
- JonSnowbd/ZT - A Zig based Imgui Application framework.
- craftlinks/zig_learn_opengl - Follow the Learn-OpenGL book using Zig.
- ashpil/moonshine - A general purpose ray traced renderer built with Zig + Vulkan.
- fabioarnold/nanovg-zig - [NanoVG](https://github.com/memononen/nanovg) - Zig Version. A small anti-aliased hardware-accelerated vector graphics library. [fabioarnold.github.io/nanovg-zig/](https://fabioarnold.github.io/nanovg-zig/)
- renerocksai/slides - This project is both a case study and also marks my first steps in the programming language Zig, towards creating a simple but powerful [imgui](https://github.com/ocornut/imgui/wiki#about-the-imgui-paradigm) based, OpenGL-rendered slideshow app in Zig.
- TinyVG/sdk - TinyVG software development kit. [tinyvg.tech/](https://tinyvg.tech/)
- andrewrk/zig-vulkan-triangle - Simple triangle displayed using Vulkan, glfw, and Zig.
- SpexGuy/Zig-Gltf-Display - A program that displays glTF files using Vulkan, written in Zig.
- tiehuis/zig-raytrace - Simple raytracer in Zig.
- tiehuis/zig-sdl2 - SDL2 bindings for Zig.
- winksaville/zig-3d-soft-engine - An attempt to create a 3D engine in software using Zig.
- river - A dynamic tiling Wayland compositor.
- Thomvanoorschot/zignite - Simple cross platform rendering engine able to compile to WebAssembly with WebWorkers support.
- MasterQ32/SDL.zig - A shallow wrapper around SDL that provides object API and error handling.
- MasterQ32/zero-graphics - Application framework based on OpenGL ES 2.0. Runs on desktop machines, Android phones and the web.
-
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.
-
-
General Operating System
-
Linker
- marlersoft/zigwin32 - A complete autogenerated set of Zig bindings for the Win32 API.
- momumi/x86-zig - Library for assembling x86 in Zig (WIP).
- ZystemOS/Pluto - An x86 kernel written in Zig.
- jzck/kernel-zig - Hobby x86 kernel Zig.
- AndreaOrru/zen - Experimental operating system written in Zig.
- iguessthislldo/georgios - Hobby Operating System.
- rafaelbreno/zig-os - A simple OS written in Zig following Philipp Oppermann's posts [Writing an OS in Rust](https://os.phil-opp.com/).
- andrewrk/HellOS - The "hello world" x86 kernel example.
- a1393323447/zcore-os - A RISC-V OS written in Zig. rCore-OS translated in Zig language.
- b0bleet/zvisor - Zvisor is an open-source hypervisor written in the Zig programming language, which provides a modern and efficient approach to systems programming.
- TalonFloof/zorroOS - Hobby operating system written in Zig.
- CascadeOS/CascadeOS - General purpose operating system targeting standard desktops and laptops.
- DorianXGH/Lukarnel - A microkernel in Zig with rust microservices.
- liampwll/zig-efi-os - Zig-efi-os.
- nrdmn/uefi-examples - UEFI examples in Zig.
- nrdmn/uefi-paint - UEFI-bootable touch paint app.
- sjdh02/trOS - Tiny aarch64 baremetal OS thingy.
- ZeeBoppityZagZiggity/ZBZZ.OS - An operating system built with RISCV and Zig.
- pbui-project/pbui-main - The PBUI (POSIX-compliant BSD/Linux Userland Implementation) project is a a free and open source project intended to implement some standard library toolsets in the Zig programming language.
- javiorfo/zig-syslinfo - Linux sysinfo Zig library.
- davidgm94/birth
-
-
Scientific Computation
-
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.
-
-
Logging Processing
-
Linker
- emekoi/log.zig - A thread-safe logging library for Zig.
- g41797/syslog - A [syslog](https://en.wikipedia.org/wiki/Syslog) RFC5424 client library.
- chrischtel/nexlog - A modern, feature-rich logging library for Zig with thread-safety, file rotation, and colorized output.
- sam701/slog - A configurable, structured logging package for Zig with support for hierarchical loggers.
- ross-weir/logex - A library that enriches `std.log` logging with additional functionality and features.
- muhammad-fiaz/logly.zig - A modern, production-grade, high-performance structured logging library for Zig, built for speed and scalability.
-
-
Date, Time and Timezones
-
Linker
- scento/zig-date - Time and date for Zig. Zig-date is a date and time library for the Zig, inspired by the popular Rust library [chrono](https://github.com/chronotope/chrono).
- frmdstryr/zig-datetime - A datetime module for Zig with an api similar to python's Arrow.
- nektro/zig-time - A date and time parsing and formatting library for Zig.
- travisstaloch/date-zig - Fast calendar algorithms ported to Zig (Cassio Neri's [EAF](https://github.com/cassioneri/eaf)).
- leroycep/chrono-zig - Zig port of the Rust chrono crate.
- karlseguin/zul - Some date/time handling functionality among the other functionality.
- clickingbuttons/datetime - Generic Date, Time, and DateTime library.
- leroycep/zig-tzif - [TZif](https://datatracker.ietf.org/doc/html/rfc8536) parser that also handles POSIX timezone strings.
- FObersteiner/zdt - Timezoned Datetime in Zig. For learning purposes.
- rockorager/zeit - Generic date/time library, including time zone loading and conversion.
- deatil/zig-time - A date and time parse and format library for Zig.
-
-
Robot Operating System
-
Utility
- micro-ROS for Arduino - ROS library for Arduino.
-
Linker
- jacobperron/rclzig - ROS 2 client library in Zig.
- luickk/MinimalRoboticsPlatform
- luickk/MinimalRoboticsPlatform
- coderonion/MinimalRoboticsPlatform - MRP is a minimal microkernel that supports the most fundamental robotic domains. It's thought for highly integrated robotics development.
-
-
GPU Computing
-
Zigged Project
- gwenzek/cudaz - Toy Cuda wrapper for Zig.
- lennyerik/cutransform - CUDA kernels in any language supported by LLVM.
- Snektron/vulkan-zig - Vulkan binding generator for Zig.
- 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
- Avokadoen/zig_vulkan - Voxel ray tracing using Vulkan compute.
- akhildevelops/cudaz - Cuda wrapper for interacting with GPUs in Zig.
- e253/zig-ocl - Static Zig Build of the OpenCL ICD Loader from Khronos Group.
-
-
Finite State Machine
-
Large Language Model
- cryptocode/zigfsm - Zigfsm is a [finite state machine](https://en.wikipedia.org/wiki/Finite-state_machine) library for Zig.
-
-
Encryption
-
Large Language Model
- gernest/base32 - Base32 encoding/decoding for Ziglang.
- 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.
- deatil/zpem - A pem parse and encode library for Zig.
-
-
Parser Library
-
Linker
- tree-sitter/zig-tree-sitter - Zig bindings to the [Tree-sitter](https://tree-sitter.github.io/zig-tree-sitter/) parsing library.
-
-
Multithreading
-
Linker
- g41797/mailbox - A convenient inter-thread communication mechanizm.
-
Programming Languages
Categories
Tools
51
FFI Bindings
42
Game Field
38
File format processing
33
Graphics Library
24
Misc
24
Web Framework
23
Network
23
Data Structure and Algorithm
22
General Operating System
21
Embedded Development
19
Machine Learning
19
GUI
17
Web3 Framework
16
Database
14
Memory Allocator and Management
14
WebAssembly
13
Command Line and Argument Parser
13
Emulators
11
Date, Time and Timezones
11
GPU Computing
9
Learning Resources
9
Compilers and Interpreters
8
Scientific Computation
7
Image and Video Processing
7
Performance Benchmark
6
Logging Processing
6
Robot Operating System
5
Sensor and Communication Interface
5
Encryption
5
Asynchronous Runtime
4
String Processing
4
Audio Processing
3
Parser Library
1
Multithreading
1
Finite State Machine
1
Sub Categories
Keywords
zig
274
zig-package
122
ziglang
77
zig-library
34
wasm
17
c
14
cpp
11
gamedev
11
embedded
10
graphics
9
webassembly
9
linux
8
gui
8
cpp-library
8
kernel
7
osdev
7
opengl
6
math
6
argument-parser
6
http
6
cli
6
operating-system
6
bindings
6
cplusplus
6
library
6
build
5
command-line
5
bare-metal
5
arm
5
tls
5
cryptography
5
networking
5
vulkan
4
game
4
server
4
json
4
os
4
time
4
async
4
risc-v
4
datetime
4
boost-libraries
4
web
4
sdl2
4
terminal
4
windows
4
lua
4
microcontroller
4
nuttx
4
parser
4