Zellij plugins in Zig!
LordMZTE 3340588e03
deps: update getty
2022-11-29 16:20:03 +01:00
example feat: update to new render-request API 2022-11-29 15:59:27 +01:00
src deps: update getty 2022-11-29 16:20:03 +01:00
.gitignore Initial Commit! 2022-06-11 23:52:21 +02:00
LICENSE chore: add GPL-3 license 2022-06-12 00:02:16 +02:00
README.md feat: change event system 2022-09-02 21:03:17 +02:00
build.zig docs: improve documentation 2022-08-23 18:25:20 +02:00
gyro.zzz deps: update getty 2022-11-29 16:20:03 +01:00

README.md

zellzig

A zig framework for writing zellij plugins.

Zellzig is currently used by these project (if you use this library, please submit a PR!):

usage

For an example of how to use it, see the example directory. Also note that you'll need a master version of the zig compiler to use zellzig.

Here's a quick overview:

const std = @import("std");
const zz = @import("zellzig");

comptime {
    // register plugin
    zz.createPlugin(@This());
}

pub fn init() void {
    // do initialization stuff
}

pub fn update() void {
    var event = zz.getEvent(my_allocator) catch return;
    defer event.deinit();
    // handle events
}

pub fn render(rows: i32, cols: i32) void {
    // draw UI
}

development

PRs are always welcome if you feel that something needs improvement/fixing! Make sure to follow Conventional Commits and to run tests first, though.

Run tests using gyro build test. Note that tests are run on the native target, not WASM.

Documentation may be generated by running gyro build -Ddocs.