Skip to content

azzamsa/zman

Repository files navigation

zman

Sponsor me

demo


zman is a CLI year (time) progress that small, fast, and just one single binary.

Features

  • Show year progress
  • Show month, and week progress
  • Show result in JSON format
  • Cross-platform

Usage Examples

zman                                Show a year progress bar
zman month                          ... a month progress bar
zman week                           ... a week progress bar
zman year --json                    ... a year progress bar with JSON format

Integration with other programs

Using zman with i3status-rust

You can use Zman with i3status-rust to show time period in your status bar.

i3status-rust-zman

i3status-rust configuration Example:

[[block]]
block = "custom"
cycle = ["zman year -J", "zman month -J"]
on_click = "<command>"
interval = 300
json = true

Other tools

See more examples to learn other variations.

If you like zman to support your favorite status-bar, please open the issue with the valid input of your status-bar. In i3status-rust the valid input it would be {"icon": "ICON", "state": "STATE", "text": "YOURTEXT"}.

Installation

From binaries

The release page includes pre-compiled binaries for GNU/Linux, macOS and Windows.

From source

Using cargo-binstall

cargo binstall bilal

With Rust's package manager cargo, you can install fd via:

cargo install zman

Development

git clone https://github.com/azzamsa/zman

# Build
cd zman
cargo build

# Run unit tests and integration tests
cargo test

# Install
cargo install --path .

Contributing

To learn more read contributing.md

Origin of the name

Zman is a 'time' in Arabic/Turksih.

Inspirations

Please check out this previous work that helped inspire the creation of zman.

License

Copyright (c) 2020-2023 azzamsa

zman is distributed under the terms of the GPL v3 License.

See the LICENSE for details.