klock

by korlibs

korlibs /klock

Multiplatform Date and time library for Kotlin

503 Stars 37 Forks Last release: about 1 month ago (v1.12.0) Creative Commons Zero v1.0 Universal 502 Commits 61 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Klock

Klock is a Date & Time library for Multiplatform Kotlin 1.3.

It is designed to be as allocation-free as possible using Kotlin inline classes, to be consistent and portable across targets since all the code is written in Common Kotlin, and to provide an API that is powerful, fun and easy to use.

Build Status Maven Version Slack

Support klock

If you like klock, or want your company logo here, please consider becoming a sponsor ★,
in addition to ensure the continuity of the project, you will get exclusive content.

Full Documentation: https://korlibs.soywiz.com/klock/

Some samples:

val now = DateTime.now()
val duration = 1.seconds
val later = now + 1.months + duration
val is2018Leap = Year(2018).isLeap
val daysInCurrentMonth = now.yearMonth.days
val daysInNextMonth = (now.yearMonth + 1.months).days

Usage with gradle:

(Compiled and tested with Gradle 5.4.1, JVM 12.0.1 and Kotlin 1.3.31). Starting with Klock 1.4.0, the library is available at jcenter.

def klockVersion = "1.7.3"

repositories { jcenter() }

kotlin { sourceSets { commonMain { dependencies { implementation "com.soywiz.korlibs.klock:klock:$klockVersion" // Common } } } }

settings.gradle

enableFeaturePreview('GRADLE_METADATA')

Use with Kotlin-JVM

def klockVersion = "1.7.3"

repositories { jcenter() }

dependencies { implementation "com.soywiz.korlibs.klock:klock-jvm:$klockVersion" }

Versions

| Klock | Kotlin | Gradle Metadata | JVM version | |--------|--------|------------------|-------------| | 1.12.0 | 1.4.0 | 1.0 | 1.8 | | 1.8.4 | 1.3.61 | 1.0 | 1.8 | | 1.8.0 | 1.3.60 | 1.0 | 1.8 | | 1.7.0 | 1.3.50 | 1.0 | 1.6 | | 1.6.0 | 1.3.50 | 1.0 | 1.6 | | 1.5.0 | 1.3.40 | 1.0 | 1.6 | | 1.4.0 | 1.3.21 | 1.0 | 1.6 |

Testing & Kotest

Kotest is a flexible and comprehensive testing tool for Kotlin with multiplatform support. It supports Klock adding additional matchers. For a full list of Klock Kotest matchers, check this link: https://github.com/kotest/kotest/blob/master/doc/matchers.md

And you can find a sample here: https://github.com/kotest/kotest/tree/master/kotest-assertions/kotest-assertions-klock

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.