chore: include readme

This commit is contained in:
Nurul Huda (Apon) 2026-01-26 11:48:42 +06:00
parent d03cee8e7a
commit bec3b3ff1e
No known key found for this signature in database
GPG key ID: 5D3F1DE2855A2F79

89
README.md Normal file
View file

@ -0,0 +1,89 @@
# Temporalz
A Zig library for working with temporal types based on the [Temporal Standard](https://tc39.es/proposal-temporal/).
Temporalz provides Zig bindings to the Rust-based [temporal_rs](https://github.com/boa-dev/temporal) library for handling dates, times, and durations with proper timezone support.
## Features
- [x] Instant - Exact moment in time
- [x] Duration - Length of time
- [ ] PlainDate - Date without time or timezone
- [ ] PlainTime - Time without date or timezone
- [ ] PlainDateTime - Date and time without timezone
- [ ] PlainYearMonth - Year and month
- [ ] PlainMonthDay - Month and day
- [ ] ZonedDateTime - Date, time, and timezone
## Installation
### Prerequisites
- Zig 0.15.2 or later
- Rust toolchain (only required if prebuilt binaries are not available for your platform)
### Add as a Dependency
```bash
zig fetch --save=temporalz https://github.com/nurulhudaapon/temporalz/archive/refs/tags/v0.1.2.tar.gz
```
### Use in build.zig
Add temporalz to your executable in `build.zig`:
```zig
const temporalz_dep = b.dependency("temporalz", .{ .target = target, .optimize = optimize });
const exe = b.addExecutable(.{
.name = "my_app",
.root_module = b.createModule(.{
.root_source_file = b.path("src/main.zig"),
.target = target,
.optimize = optimize,
.imports = &.{
.{ .name = "temporalz", .module = temporalz_dep.module("temporalz") },
},
}),
});
```
## Supported Platforms
Prebuilt binaries are available for:
- aarch64-macos
- x86_64-macos
- aarch64-linux-gnu
- x86_64-linux-gnu
- x86_64-windows-gnu
- aarch64-windows-gnu
For unsupported platforms, the library will automatically build from source if the Rust toolchain is installed.
## Development
### Clone the Repository
```bash
git clone https://github.com/nurulhudaapon/temporalz.git
cd temporalz
```
### Build and Run
```bash
zig build
zig build run
```
### Run Tests
```bash
zig build test
```
## License
MIT