wtime 0.3.0

WTIME provides a variety of functions for obtaining the current UTC and local times, as well as generating customizable timestamps to suit your needs.
Documentation

WTIME

WTIME provides a variety of functions for obtaining the current UTC and local times, as well as generating customizable timestamps to suit your needs.


Table of Contents

Installation

Run the following Cargo command in your project directory:

cargo add wtime

Or add wtime to your Cargo.toml file:

[dependencies]
wtime = "MAJOR.MINOR.PATCH" # Replace with the latest version

Features

  1. Current Time Retrieval

    • UTC and Local Time: WTIME offers seamless access to both current UTC and local times, making it easy to work with time zones and coordinate time-related functionalities.
  2. Customizable Timestamps

    • Flexible Formatting: Generate timestamps in various formats to meet your specific requirements, whether for logging, database entries, or user interfaces.
    • Configuration Options: Tailor timestamp outputs to include or exclude specific components (e.g., date, time, time zone) based on your project needs.
  3. Time Zone Support

    • Multiple Time Zones: Easily convert between different time zones, allowing for applications that require global time management.
    • Daylight Saving Time Adjustments: Automatic adjustments for daylight saving time ensure that your applications reflect accurate local time.
  4. Easy Integration

    • User-Friendly API: The WTIME API is designed with simplicity in mind, allowing developers to implement time-related functions with minimal effort.
    • Comprehensive Documentation: Well-documented functions and examples help users quickly understand how to leverage the crate effectively.
  5. High Performance

    • Efficiency: WTIME is optimized for performance, ensuring that time retrieval and manipulation operations are fast and resource-friendly.
    • Lightweight: The crate is designed to be lightweight, minimizing overhead while providing extensive functionality.

Usage

1. UTC

use wtime::utc::{calculate_date, get_day, get_day_name};

fn main() {
    let day = get_day();
    println!("Current day: {}", day);

    let day_name = get_day_name(1_670_000_000);
    println!("Day name: {}", day_name); // Day name: Friday
    println!("Day name: {}", get_day_name(day));

    let (year, month, day) = calculate_date(1728933069);
    println!("Date: {}-{}-{}", year, month, day); // Date: 2024-10-14
}
use wtime::utc::format_utc_ts;

fn main() {
    let timestamp = format_utc_ts();
    println!("Formatted UTC Timestamp: {}", timestamp);

    // Simulate generating a unique ID with a suffix
    let unique_id_with_suffix = format!("ID-{}-{}", format_utc_ts(), "random_suffix"); // Replace with actual random suffix function
    println!("Generated Unique ID with Suffix: {}", unique_id_with_suffix);

    // Simulate generating a unique ID without a suffix
    let unique_id_without_suffix = format!("ID-{}", format_utc_ts());
    println!("Generated Unique ID without Suffix: {}", unique_id_without_suffix);

    // Simulate generating a blog post UTC timestamp
    let blog_post_timestamp = format!("BlogPost Timestamp: {}", format_utc_ts());
    println!("Generated Blog Post UTC Timestamp: {}", blog_post_timestamp);
}

Documentation

UTC

Function Function Function
calculate_date duration_since format_utc_ts
get_day get_day_name get_hour
get_millis get_minute get_month
get_month_name get_nanos get_second
get_year is_leap_year utc_now
utc_ts_millis utc_ts_nanos utc_ts_sec

License

This project is licensed under either of the following licenses:

  • MIT License
  • Apache License, Version 2.0

You may choose either license for your purposes.

Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue for any feature requests or bug reports.

Author

Dr. Montasir Mirghani