Zig monthly, August 2021

iOS support, tutorials, tree-sitter, a pathtracer, and more

Announcing zigmonthly.org

Today, I am launching zigmonthly.org: a once-a-month publication where I curate all things Zig that I’ve seen since the past month from the Zig Discord channels, zig.news, Twitter, Reddit, etc. and do my best to come up with a nice showcase. Learn more

Zig cross compiling to iOS? Yes please!

Nearly matching up with Zig’s 6th birthday, @kubkon (a core team member and author of Zig’s MachO linker) has begun adding minimal support for building iOS binaries with Zig, from any OS. Here’s one running in the iOS emulator on a Mac:

Tree Sitter for Zig

@maxxnino has released a tree sitter parser for Zig.

(Tree-sitter is a parsing framework from GitHub used for a variety of editors and IDEs, such as NeoVim and OniVim for code navigation and syntax highlighting. It’s also used by static analysis tools like Semgrep and powers GitHub’s code navigation features - so having an implementation for Zig could prove quite useful!)

A twin stick shooter

@unvestigate shared in the Zig discord a video of their twin stick shooter they began building four days ago, with all gameplay code in Zig:

Prometheus-style metrics for your Zig applications

@vrischmann released a library that enables one to add Prometheus-inspired counters, gauges, and histograms to their Zig applications - for use primarily with VictoriaMetrics, a Prometheus alternative.

Positron - a web renderer frontend for Zig applications

@MasterQ32 has released Positron, a web renderer frontend for Zig applications. These Zig bindings to the popular webview library, enable one to write cross-platform HTML5 UI applications:

zigmod

@nektro continues her work on zigmod, a package manager for the Zig programming language - this month releasing v67 for various bug fixes. The project has now hit over 500 commits and 3.6k lines of code, when you add in the fact that zigmod uses a few handfuls of Zig dependencies - I think it’s an interesting large Zig project.

I should also note an official Zig package manager is planned.

A simple Karaoke player

@captainhorst shared in the Zig Discord their recent project: a simple Karaoke player (note: video has no audio.)

video

A path tracer

@msinilo shares a detailed write-up and their experience implementing a simple ray tracer in Zig - with no prior Zig experience!

“I’ve to admit I went in completely ‘blind’, didn’t know much about the language other than some passing remarks posted on Twitter. I kinda expected another Rust, so initially was a bit put off by how “Spartan” Zig was. After I adjusted and started taking it for what it was – a modern “C+” alternative – it actually became a very fun experiment.”

Tutorials

Loris Cro, VP of community at the Zig Software Foundation has been putting together multiple beginner tutorials over on https://zig.news:

See also


Enjoying Zig monthly? Please consider supporting my work

Subscribe

Enter your email to get one Zig newsletter per month (or use this RSS feed):