temporalz/README.md
2026-03-14 17:00:39 +06:00

2 KiB

Temporalz

CI

A Zig library for working with temporal types based on the Temporal Standard.

Temporalz provides Zig bindings to the Rust-based temporal_rs library for handling dates, times, and durations with proper timezone support.

Installation

Prerequisites

  • Zig 0.16.0-dev.2860+9c5460316
  • Rust toolchain (only required if prebuilt staticlibs are not available for your platform)

Add as a Dependency

zig fetch --save git+https://github.com/nurulhudaapon/temporalz.git

Use in build.zig

Add temporalz to your executable in build.zig:

const temporalz = b.dependency("temporalz", .{
    .target = target,
    .optimize = optimize,
});

const exe = b.addExecutable(.{...});

exe.root_module.addImport("temporalz", temporalz.module("temporalz"));

Checklist (Test262)

Namespace Test262 (todo)
Instant 0/0
Duration 0/0
PlainDate 0/0
PlainTime 0/0
PlainDateTime 0/0
PlainYearMonth 0/0
PlainMonthDay 0/0
ZonedDateTime 0/0

Prebuilt

Prebuilt libraries are included for the following platforms:

  • x86_64-macos
  • aarch64-macos
  • x86_64-linux-gnu
  • aarch64-linux-gnu
  • x86_64-windows-gnu
  • aarch64-windows-gnu
  • wasm32-freestanding
  • wasm32-wasi
  • x86_64-linux-musl
  • aarch64-linux-musl
  • aarch64-linux-android
  • aarch64-ios

For other platforms, the library will build from source; you need the Rust toolchain installed.

Development

Clone the Repository

git clone https://github.com/nurulhudaapon/temporalz.git
cd temporalz

Build and Run

zig build run

Run Tests

zig build test

License

MIT