Gitpedia

Zig workbench

DarknessFX Zig templates, projects, programs, libs and tools.

From DarknessFX·Updated May 13, 2026·View on GitHub·

.----------------. .----------------. .----------------. | .--------------. || .--------------. || .--------------. | | | ________ | || | _________ | || | ____ ____ | | | | |_ ___ `. | || | |_ ___ | | || | |_ _||_ _| | | | | | | `. \ | || | | |_ \_| | || | \ \ / / | | | | | | | | | || | | _| | || | > `' [!NOTE] > This is a student project, code will run and build without errors (mostly because I just throw away errors), it is not a reference of ... The project is written primarily in C, distributed under the MIT License license, first published in 2023. Key topics include: allegro5, cuda, dear-imgui, directx11, imgui.

Latest release: zig_raylib_examples_v0.1zig_raylib_examples
January 3, 2025View Changelog →
 .----------------.  .----------------.  .----------------. 
| .--------------. || .--------------. || .--------------. |
| |  ________    | || |  _________   | || |  ____  ____  | |
| | |_   ___ `.  | || | |_   ___  |  | || | |_  _||_  _| | |
| |   | |   `. \ | || |   | |_  \_|  | || |   \ \  / /   | |
| |   | |    | | | || |   |  _|      | || |    > `' <    | |
| |  _| |___.' / | || |  _| |_       | || |  _/ /'`\ \_  | |
| | |________.'  | || | |_____|      | || | |____||____| | |
| |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------' 

       DarknessFX @ https://dfx.lv | Twitter: @DrkFX

About

I'm studying and learning Zig Language (started Nov 19, 2023), sharing here my Zig projects, templates, libs and tools.

Using Windows 10, Zig x86_64 Version : 0.16.0

[!NOTE]
This is a student project, code will run and build without errors (mostly because I just throw away errors), it is not a reference of "best coding practices". Suggestions or contributions changing the code to the "right way and best practices" are welcome.

Templates

FolderDescription/Subsystem
BaseTemplate for a console program.Console
BaseExTemplate for a console program that hide the console window.Console
BaseWinTemplate for a Windows program.Windows
BaseWinExTemplate for a Windows program, Windows API as submodule.Windows
BaseImGuiTemplate with Dear ImGui via Dear Bindings. Extra: ImGui_Memory_Editor. Renderers: OpenGL2, OpenGL3, DirectX11, SDL3 OpenGL3, SDL2 OpenGL2, SDL3_Renderer, SDL2_RendererBoth
BaseRayLibTemplate with RayLib and RayGUI.Console + Web
BaseRayLibImGuiTemplate with RayLib and RayGUI and Dear ImGui via Dear Bindings and rlImGui.Console
BaseSDL2Template with SDL2.Windows
BaseSDL3Template with SDL3.Windows
BaseSDL3ImGuiTemplate with SDL3 and Dear ImGui.Windows
BaseSFML2Template with SFML2 via CSFML2 C bindings.Console
BaseSokolTemplate with Sokol. Extras UI: Dear ImGui via cimgui, Nuklear.Windows
BaseAllegroTemplate with Allegro5.Console
BaseNanoVGTemplate with NanoVG using GLFW3 OpenGL3.Console
BaseLVGLTemplate with LVGL UI.Console
BaseMicrouiTemplate with microui. Renderers: SDL2, Windows GDI.Windows
BaseNuklearTemplate with Nuklear UI using Windows GDI native.Windows
BaseWebviewTemplate with Webview.Console
BaseClayTemplate with Clay UI and RayLib, using clay-zigibindings.Windows
BaseGTKTemplate with GTK .Console
BaseFLTKTemplate with FLTK via cFLTK .Windows
BaseOpenGLTemplate with OpenGL.Windows
BaseDX11Template with DirectX Direct3D 11.Windows
BaseVulkanTemplate with Vulkan, versions: Win32API, GLFW3 .Both
BaseGLFWTemplate with GLFW and GLAD.Console
BaseFreeglutTemplate with freeglut.Console
BaseWasmTemplate with BaseWasm using Emscripten.Web
BaseWebGPUTemplate with WebGPU using Emscripten and Dawn.Windows + Web
BaseLuaTemplate with Lua scripting language.Console
BaseSQLiteTemplate with SQLite database.Console
BaseLMDBTemplate with LMDB database.Console
BaseDuckDBTemplate with DuckDB database.Console
BaseODETemplate with ODE Open Dynamics Engine physics.Console
BaseChipmunk2DTemplate with Chipmunk2D physics.Console
BaseBox2DTemplate with Box2D physics.Console
BaseLibpngTemplate with libpng image format.Console
BaseZlibTemplate with zlib compression.Console
BaseZstdTemplate with Zstd fast lossless compression.Console
BaseCUDATemplate with Nvidia CUDA .Console
<details> <summary><ins>Usage</ins></summary>
StepsPath example
Duplicate the template folder.C:\zig_workbench\BaseWin Copy\
Rename copy folder to your project name.C:\zig_workbench\MyZigProgram\
Copy tools/updateProjectName.bat to your project Tools folder.C:\zig_workbench\MyZigProgram\Tools\
Run updateProjectName.bat.C:\zig_workbench\MyZigProgram\Tools\updateProjectName.bat
Open YourProject VSCode Workspace.C:\zig_workbench\MyZigProgram\MyZigProgram VSCode Workspace.lnk

[!WARNING]
Current VSCode + ZLS extension do not accept @cInclude relative to project folder and will break builds.<br/>
After open your new project, remember to edit .zig files @cInclude including your full path and using / folder separator.

Zig have a useful built in feature: zig init that creates a basic project. I customized this basic project to fit my use cases, mostly to output to bin folder instead of zig-out\bin, have main.zig in the project root instead of src folder and use my VSCode Setup.

</details> <details> <summary><ins>About Dear ImGui</ins></summary> <pre>Using Dear ImGui Docking 1.92.8 Docking and Dear Bindings v0.21 (20260513) All necessary libraries are inside the template. <br/> Note: When changing renderers, make sure to rename all files (Main.zig, Build.zig, .vscode/Tasks.json). Check tools/RunAll.bat to get a list of **Zig Run** commands to launch rendereres without renaming files.

ImGui_Memory_Editor: Edited from Dear Bindings output. Sample inside all ImGui templates
and usage details at <a href="BaseImGui/lib/imgui/cimgui_memory_editor.h" target="_blank">cimgui_memory_editor.h</a></pre>

</details> <details> <summary><ins>About LVGL</ins></summary> <pre>Using <a href="https://github.com/lvgl/lvgl" target="_blank">LVGL from source</a> (20231105, 9.0 Preview). Used parts of code from <a href="https://github.com/lvgl/lv_port_pc_visual_studio" target="_blank">lv_port_pc_visual_studio</a> (lv_conf and main source). All necessary libraries are inside the template. Download Demos and Examples folders from the GitHub source<br/> (and don't forget to add all .C files necessary to build).</pre> </details> <details> <summary><ins>About microui</ins></summary> <pre>microui.c and microui.h are inside the project folder. Normally I would recommend to download from the official repository but sadly microui is outdated (last update 3 years ago) and I applied <a href="https://github.com/rxi/microui/pulls" target="_blank">community pull requests</a> to the source code. It was necessary because the original code crashed with <i>runtime error: member access within misaligned address</i> and without the <a href="https://github.com/rxi/microui/issues/19#issuecomment-979063923" target="_blank">fix</a> this project would not work.</pre> </details> <details> <summary><ins>About Nuklear</ins></summary> <pre>Using Nuklear <a href="https://github.com/Immediate-Mode-UI/Nuklear/releases/tag/v4.13.3" target="_blank">4.13.3</a> from source (20260504). I had to make some changes to the nuklear_gdi.h header to fix cImport errors, it failed with duplicate symbols (added inline) and later missing functions (removed static).</pre> </details> <details> <summary><ins>About RayLib</ins></summary> <pre>Using <a href="https://github.com/raysan5/raylib" target="_blank">RayLib</a> and <a href="https://github.com/raysan5/raygui" target="_blank">RayGUI</a> from source (v6.0 from 20260423).</pre> </details> <details> <summary><ins>About Allegro</ins></summary> <pre>Using <a href="https://github.com/liballeg/allegro5" target="_blank">Allegro5 from nuget package</a> (v5.2.10 from 20241127).</pre> </details> <details> <summary><ins>About SDL2</ins></summary> <pre>Using SDL2 v2.32.10. &nbsp;&nbsp;Download SDL2 from: <a href="https://github.com/libsdl-org/SDL/releases/tag/release-2.28.4" target="_blank">GitHub SDL2 Releases Page</a>. &nbsp;&nbsp;For Windows devs: <a href="https://github.com/libsdl-org/SDL/releases/download/release-2.28.4/SDL2-devel-2.28.4-VC.zip" target="_blank">SDL2-devel-2.28.4-VC.zip 2.57 MB</a>. &nbsp;&nbsp;Check <a href="https://github.com/DarknessFX/zig_workbench/blob/main/BaseSDL2/lib/SDL2/filelist.txt" target="_blank">BaseSDL2/lib/SDL2/filelist.txt</a> for a description &nbsp;&nbsp;of the folder structure and expected files path location.</pre> </details> <details> <summary><ins>About SDL3</ins></summary> <pre>Using SDL3 version 3.4.8 from https://github.com/libsdl-org/SDL/releases/tag/release-3.4.8.</pre> </details> <details> <summary><ins>About SDL3ImGui</ins></summary> <pre>Because the BaseImGui template grew in complexity with multiple backend renderers, and the BaseSDL3 template has multiple examples, this BaseSDL3ImGui template is a clean and ready-to-use project that I use as the default for new applications/projects.</pre> </details> <details> <summary><ins>About SFML2</ins></summary> <pre>Using CSFML2 v2.6.1 from https://www.sfml-dev.org/download/csfml/ .</pre> </details> <details> <summary><ins>About GTK</ins></summary> <pre>Using GTK 4.20.1 from https://www.gtk.org/ .</pre> </details> <details> <summary><ins>About FLTK</ins></summary> <pre>Using FLTK 1.5.0 from https://github.com/fltk/fltk/tree/f05ee883595b910038e49963af6dbaba9081b49f and cFLTK 0.1.5 from https://github.com/MoAlyousef/cfltk .</pre> </details> <details> <summary><ins>About GLFW and GLAD</ins></summary> <pre>GLFW 3.3.8 (Win64 Static). GLAD 2.0 (OpenGL 3.3 Compatibility). All necessary libraries are inside the template.</pre> </details> <details> <summary><ins>About WebGPU</ins></summary> <pre>SDL3 3.4.0 and WebGPU Dawn Jan/2026. All necessary libraries are inside the template. &nbsp; Requirements: . [Emscripten](https://emscripten.org/) installed. </pre> </details> <details> <summary><ins>About Nvidia Cuda</ins></summary> <pre>Requirements: - Visual Studio from https://visualstudio.microsoft.com/downloads/ - Nvidia CUDA SDK from https://developer.nvidia.com/cuda-downloads (I'm using Nvidia CUDA SDK 12.6.3)

If you get an error while installing CUDA SDK, use Custom Installation and disable the following:
  Nsight VSE
  Visual Studio Integration
  Nsight Systems
  Nsight compute
  Nvidia GeForce Experience
  Other components
  Driver components

If you want, you can install Nsight with its own installer.</pre>

</details>

Programs

FolderDescription/Subsystem
ToSystrayGive other Windows programs ability to "Minimize to Systray".<br/> Binary version ready to use is available to download at Releases Page - ToSystray_v.1.0.0Windows
zTimeSimilar to Linux TIME command, add zTime in front of your command to get the time it took to execute.<br/> Binary version ready to use is available to download at Releases Page - zTime v1.0.1.Console
<details> <summary><ins>ToSystray Usage</ins></summary> <pre>Usage: ToSystray.exe "Application.exe" "Application Name" &nbsp;&nbsp;<br/> Example: ToSystray.exe "C:\Windows\System32\Notepad.exe" "Notepad"</pre> </details> <details> <summary><ins>zTime Usage</ins></summary> <pre>&nbsp;&nbsp;Examples, run in your Command Prompt, Windows Terminal or Powershell: &nbsp;&nbsp;&nbsp;&nbsp;C:\>zTime zig build &nbsp;&nbsp;&nbsp;&nbsp;C:\>zTime dir &nbsp;&nbsp;&nbsp;&nbsp;C:\>zTime bin\ReleaseFast\YourProject.exe<br/> &nbsp;&nbsp;Suggestion: &nbsp;&nbsp;Copy zTime.exe to your Zig folder, this way the application will &nbsp;&nbsp;share the Environment Path and can be executed from anywhere.</pre> </details>

Projects

FolderDescription
ModernOpenGLMike Shah ModernOpenGL Youtube Tutorials ported to Zig + SDL3.1.2 OpenGL 4.6.
zig_raylib_examplesWIP RayLib examples ported to Zig.
zTinyRasterizerWIP Lisitsa Nikita tiny CPU rasterization engine ported to Zig.
<details> <summary><ins>ModernOpenGL Info</ins></summary> <pre>All files at Lib/SDL3 are the original ones from SDL Github, GLAD generated for 4.6 Core. For this project I did not use any zig binds or wrappers, just plain cImport. A copy of SDL.h and glad.h exist at Lib root just replacing &lt;&gt; with "", this change made easier for VSCode and ZLS display auto-complete. I tried to @cImport GLM OpenGL Mathematics "C" version cGML, @import ziglm and glm-zig, but each have their own quirks and styles while I'm wanted to keep the source code similar to the episodes, for this reason I built my own GLM.ZIG library with just a handful of used functions. There are some small changes implemented from the original tutorial code, mostly adding full Translate, Rotate, Scale, Keyboard and Mouse Movement. The Window Caption have a brief instruction of the keyboard settings and also, as my default, I used SHIFT+ESC to close the program.</pre> </details>

Libraries

FolderDescription
dos_color.zigHelper to output colors to console (std.debug.print) or debug console (OutputDebugString).
string.zigWIP String Type.
<details> <summary><ins>Libraries usage</ins></summary> <pre>&nbsp;&nbsp;Create a /lib/ folder in your project folder. &nbsp;&nbsp;Copy the library file to /lib/ . &nbsp;&nbsp;Add <q>const libname = @Import("lib/lib_name.zig");</q> to your source code.</pre> </details>

Tools

[!IMPORTANT]
All tools should be run from YourProjectFolder\Tools\ folder, <br/>
do not run it directly in the main folder.

FolderDescription
updateProjectName.batRead parent folder name as your ProjectName and replace template references to ProjectName.
buildReleaseStrip.batCall "zig build-exe" with additional options (ReleaseSmall, strip, single-thread), emit assembly (.s), llvm bitcode (.ll, .bc), C header, zig build report.
clean_zig-cache.batRemove zig-cache from all sub folders.

Tools_ContextMenu

FolderDescription
zig.icoZig logo Icon file (.ico). (Resolutions 64p, 32p, 16p)
zig_256p.icoZig logo Icon file (.ico) with higher resolutions . (Resolutions 256p, 128p, 64p, 32p, 16p)
zig_contextmenu.batLauncher used by Windows Explorer context menu, copy to Zig folder PATH.
zig_icon.regAssociate an icon for .Zig files, add Build, Run, Test to Windows Explorer context menu. Read more details in the file comments.
zig_icon_cascade.regAlternative of zig_icon.reg, groups all options inside a Zig submenu. Read more details in the file comments.

Tools to help setup Windows Explorer to apply icons to .ZIG files and add context menu short-cuts to Build, Run and Test.

<details> <summary>📷<ins>zig_icon.reg - screenshot</ins></summary> <pre>After run zig_icon.reg, Windows Explorer will look like:<br/> <img src="/.git_img/zig_icon_contextmenu.png" width="480" /></pre> </details> <details> <summary>📷<ins>zig_icon_cascade.reg - screenshot</ins></summary> <pre>After run zig_icon_cascade.reg, Windows Explorer will look like:<br/> <img src="/.git_img/zig_icon_cascade_contextmenu.png" width="480" /></pre> </details>

About VSCode (Tips and Tricks)

I'm using VSCode to program in Zig and using Zig Language extension from ZLS - Zig Language Server.

<details> <summary><ins>Extensions that I use and recommend</ins></summary> <pre>&nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools" target="_blank">C/C++</a> from Microsoft. (**essential to enable Debug mode**.) &nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools-extension-pack" target="_blank">C/C++ Extension Pack</a> from Microsoft. (non-essential) &nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools-themes" target="_blank">C/C++ Themes</a>. (non-essential) &nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.hexeditor" target="_blank">Hex Editor</a> from Microsoft. (**essential in Debug mode**) &nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=DrMerfy.overtype" target="_blank">OverType</a> from DrMerfy. (non-essential? Add Insert key mode) &nbsp;&nbsp;<a href="https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme" target="_blank">Material Icon Theme</a> from Philipp Kief. (non-essential, but make VSCode looks better)</pre> </details>

VSCode RADDebugger

I'm using VSCode with Cppvsdbg for a while but its features are lackluster, recently I tried RadDebugger and it works surprisingly well.
I "hacked" a custom command into launch.json as a shortcut to start a RadDebugger session with the latest debug build.<br/>This is not feature in all .vscode/launch.json templates, if you are interested the additional launch.json settings are:

<pre> { "name": "Debug with RadDebugger", "type": "cppdbg", "request": "launch", "presentation": { "hidden": false, "group": "", "order": 3 }, "program": "${workspaceFolder}/bin/Debug/${workspaceFolderBasename}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "preLaunchTask": "${defaultBuildTask}", "externalConsole": true, "avoidWindowsConsoleRedirection": true, "MIMode": "gdb", "miDebuggerPath": "C:/Unreal/RadDebugger/raddbg.exe", "miDebuggerArgs": "-q -auto_step -project ${workspaceFolder}/bin/Debug/${workspaceFolderBasename}.exe", "logging": { "engineLogging": true, "trace": true, "traceResponse": true } }, </pre>

Remember to fix the hard-coded paths (at miDebuggerPath) to reflect your local folder to RADDebugger path.

Ctrl+R is the new F5

I changed a few VSCode keybindings for better use, mostly because Zig offer multiple options for Build, Run, Test, Generate Docs, and I setup VSCode Tasks.json with all available options.

The most important key binding change is CTRL+T to open TASKS menu, because VSCode keep the last task as first menu item, just pressing ENTER will: save current file and run the last task.

Zig Build is fast and Template/.vscode/launch.json is already setup so VSCode F5 key (Start with Debugger) will activate Zig Build and start debug, it works great and fast. But even better is Zig Run Main, the way zig run compile and start (without debugger) is a lot faster and helps a lot to iterate and productivity. CTRL+T, Enter became one of my most used keyboard shortcut inside VSCode and CTRL+R to repeat the last task.<br/>

<details> <summary>📷<ins>Task menu screenshot</ins></summary> <img src="/.git_img/vscode_tasks_menu.png" width="480" /> </details> <details> <summary><ins>VSCode Keybindings details</ins></summary> <br/>VSCode Keybindings file location at %APPDATA%\Code\User\keybindings.json<br/><br/>

CTRL+T : Removed showAllSymbols and added runTask.<br/>
Reason : Easy access to Tasks menu and repeatable action to run last action.<br/>

CTRL+R : Removed all bindings.<br/>
Reason: Because this key binding try to reload the current document or display a different menu that also will try to close the current document... If I need I can go to menu File > Open Recent File instead of this shortcut that risk to close what I'm working.<br/>

<pre> [ { "key": "ctrl+t", "command": "-workbench.action.showAllSymbols" }, { "key": "ctrl+t", "command": "workbench.action.tasks.runTask" } { "key": "ctrl+r", "command": "-workbench.action.reloadWindow", "when": "isDevelopment" }, { "key": "ctrl+r", "command": "-workbench.action.quickOpenNavigateNextInRecentFilesPicker", "when": "inQuickOpen && inRecentFilesPicker" }, { "key": "ctrl+r", "command": "-workbench.action.openRecent" }, { "key": "ctrl+t", "command": "workbench.action.tasks.runTask" }, { "key": "ctrl+r", "command": "workbench.action.tasks.reRunTask" } ] </pre> </details>

Copy your libraries DLL to Zig folder

When using libraries that have .DLL (for example SDL2_ttf.dll) the task Zig Run Main will fail because it cannot find the DLL and the exe was built somewhere in zig-cache, the error is "The terminal process ... terminated with exit code: 53.". The easier way to fix this error is to copy the library DLL to your Zig PATH folder.

Personal observation about VSCode

I have a Love/Hate relationship with VSCode, I only used it to code for Arduino and ESP32 with Platform.io and the hate is always when the editor try to be "smart and helpful".

Yellow lightbulbs sometimes show up to notify "There are no fix", JSON files organized to easier read key items are reordered because "that is how JSON should be ordered", at least 10% of keys typed are wasted deleting things that VSCode put there to help me. And my favorite gripe: You select a function name in the Intellisense combo, it prints at your source code "YourFunction([cursor here])" BUT it don't display the arguments list, you need to backspace to delete the ( opening parenthesis, type ( and now the tooltip show up with the arguments list.

Credits

Zig Language from ZigLang.org.<br/>
SDL2, SDL3 from libSDL.org.<br/>
GLFW from GLFW.org.<br/>
GLAD from Dav1dde.<br/>
microui from rxi.<br/>
Dear ImGui from Omar Cornut.<br/>
Dear Bindings from Ben Carter.<br/>
LVGL from LVGL Kft.<br/>
ModernOpenGL from Mike Shah.<br/>
RayLib and RayGUI from Ramon Santamaria (@raysan5).<br/>
WebGPU and Wasm from World Wide Web Consortium.<br/>
Dawn from Google.<br/>
Sokol from Floooh.<br/>
cimgui from Sonoro1234.<br/>
Nuklear from Micha Mettke.<br/>
Clay from Nic Barker.<br/>
Allegro5 from Allegro 5 Development Team.<br/>
NanoVG from Memononen.<br/>
SFML2 from Laurent Gomila.<br/>
Webview from Webview Team.<br/>
Lua from PUC-Rio.<br/>
SQLite from SQLite Consortium.<br/>
LMDB from Symas Corporation.<br/>
DuckDB from DuckDB Foundation.<br/>
ODE from Russ L. Smith.<br/>
Chipmunk2D from Howling Moon Software.<br/>
Box2D from Erin Catto.<br/>
zstd from Meta.<br/>
TinyRasterizer from Lisitsa Nikita.<br/>
Vulkan from Khronos Group.<br/>
Nvidia CUDA from Nvidia.<br/>
Clay from Nic Barker.<br/>
clay-zig-bindings from johan0A.<br/>
GTK from GNOME Foundation.<br/>
libpng from The PNG Reference Library Authors.<br/>
zlib from Jean-loup Gailly and Mark Adler.<br/>
freeglut from Pawel W. Olszta.<br/>
FLTK from Bill Spitzak and others.<br/>

<br/>

License

MIT - Free for everyone and any use.

DarknessFX @ https://dfx.lv | Twitter: @DrkFX<br/>
https://github.com/DarknessFX/zig_workbench

<details> <summary><sub><sub>SEO Helper</sub></sub></summary> <pre>Giving Google a little help pairing Zig + LIB words, because it find my X (twitter) posts easier than this repo: WinEx = Zig Windows program template with Windows API as submodule sample example. ImGui = Zig ImGui Windows program template with renderers: OpenGL3, DirectX11, SDL3 OpenGL3, SDL2 OpenGL2, SDL3_Renderer, SDL2_Renderer sample example. LVGL = Zig LVGL Windows program template sample example. microui = Zig microui Windows program template with renderers: SDL2, Windows GDI sample example. RayLib = Zig RayLib and RayGUI Windows program template sample example. SDL2 = Zig SDL2 Windows program template sample example. SDL3 = Zig SDL3 Windows program template sample example. OpenGL = Zig OpenGL GL.h Windows program template sample example. DX11 = Zig DirectX Direct3D 11 DX11 Windows program template sample example. Vulkan = Zig Vulkan Windows program template sample example. GLFW = Zig GLFW GLAD Windows program template sample example. Wasm = Zig WASM program template sample example. WebGPU = Zig WebGPU WASM program template sample example. Sokol = Zig Sokol Dear ImGui Nuklear UI program template sample example. Nuklear = Zig Nuklear UI program template sample example. Clay = Zig Clay UI program template sample example. Allegro = Zig Allegro5 program template sample example. NanoVG = Zig NanoVG program template sample example. Webview = Zig Webview program template sample example. Lua = Zig Lua scripting language program template sample example. SQLite = Zig SQLite database program template sample example. LMDB = Zig LMDB transactional database program template sample example. ODE = Zig ODE Open Dynamics Engine physics program template sample example. Chipmunk2D = Zig Chipmunk2D physics program template sample example. Box2D = Zig Box2D physics program template sample example. zstd = Zig Zstd fast lossless compression program template sample example. CUDA = Zig NVIDIA CUDA program template sample example. Clay = Zig Clay UI program template sample example. GTK = Zig GTK UI program template sample example. FLTK = Zig FLTK UI program template sample example. </pre> </details>

Contributors

Showing top 1 contributor by commit count.

View all contributors on GitHub →

This article is auto-generated from DarknessFX/zig_workbench via the GitHub API.Last fetched: 6/1/2026