Rustで7年間開発した後、著者は既存のRust JSONPathライブラリをZigで再実装し、Cの後継となる可能性のある言語を具体的に感じ取ろうとした。このプロジェクトでは、RFC 9535で定義されたJSONPath式のパースと評価という同じ機能を移植し、玩具の例ではなく実際のコードに基づいた比較を行うことを目的とした。最初の驚きはIDEサポートの状況だった:Zigは構文ハイライトと基本的な自動補完以外ほとんど提供せず、著者はコマンドライン作業に戻ることを余儀なくされた。この重量級IDEツールの欠如は意外にも新鮮に感じられ、`zig build test`というシンプルなワークフローが分かりやすく、最終的にhelixベースのエディタ設定を採用するに至った。
プロジェクト構成については、Zigのフラットな構造が関連コードを少ないファイルにまとめる方向に導いた。これは、深いモジュール階層を作りがちなRustの傾向とは対照的である。著者はネストは可能だが、インポートの摩擦が生じ、可読性がほとんど向上しないことを指摘し、プロジェクトが本当に階層を必要とする場合を除いて、すべてを一つの場所に保持することを好むようになった。テストにおいても対比が見られた:Rustのデフォルトのインラインユニットテストは便利だが、Zigの同等のアプローチはフラットなレイアウトでは冗長に感じられ、著者はbuild.zigで設定した後にモデルファイルに直接テストを配置することを選んだ。
パラダイムの観点から、Rustの関数型寄りのスタイル(ゼロコストイテレータ、不変データ、モナディックコンビネータ)からZigの命令型コアへのシフトが明らかだった。Rustでは不変な変換とコンビネータをイテレータより好むのに対し、Zigではインプレースの変畑と明示的なアロケータ処理に向かわせた。手動メモリ管理は常に懸念事項となった;すべての関数にアロケータが必要であり、deinitを忘れたり二度呼び出したりすると、TestAllocatorが助けてくれるリークや破損が発生するが、この規律はRustの自動ドロップ保証からの顕著な変化であった。全体として、著者はZigの低レベルの明瞭さと速度に魅力を感じたものの、まだ若いエコシステムがRustにある一部の洗練さと便利さを欠いていることも認めた。