New to Zig? We recommend checking out
ziglang.org/learn to get up to speed.
Local development
To run the code for your challenge locally, you’ll needzig
installed. Our test runners use version 0.11
(as of November 2023).
The script for your challenge (like ./your_bittorrent.sh
) will automatically compile your code using zig build-exe
before executing it. It’ll
look something like this:
File structure
- The files for your solution are placed in the
app
directory. app/main.zig
contains themain
function, which is what the test runner executes.
Adding more files
You can add more files and directories to theapp
directory. The test runner will include them when compiling your code.
For example, if you added a file at app/foo.zig
, you could use it like so:
app/foo/bar.zig
, you could use it like so:
Adding dependencies
We don’t support the package manager added in Zig 0.11 yet. For now, you’ll need to copy in any dependencies you need into your project and import them using@import
.
We’d love help adding support for the new package manager added in Zig 0.11.
If you’re interested in this, feel free to open a PR to the SQLite challenge
repository.
You can find more details on contributing language support
here.