📚 kair - Awesome Go Library for Date and Time

Go Gopher mascot for kair

Date and Time - Golang Formatting Library.

🏷️ Date and Time
📂 Libraries for working with dates and times.
24 stars
View on GitHub 🔗

Detailed Description of kair

Kair

Date and Time - Golang Formatting Library

Mentioned in Awesome Go License: MIT Go Report Card codecov Build Status GitHub GoDoc

Setup

To get Kair

> Go CLI
go get github.com/GuilhermeCaruso/kair
> Go DEP
dep ensure -add github.com/GuilhermeCaruso/kair
> Govendor
govendor fetch github.com/GuilhermeCaruso/kair

Example

package main

import (
	"fmt"

	k "github.com/GuilhermeCaruso/kair"
)

func main() {
	now := k.Now()

    fmt.Printf("Right now is %s \n", now.CustomFormat("dd/MM/YYYY hh:mm:ss"))

	date := k.Date(29, 05, 1980)

	fmt.Printf("The %s was a %s in %s\n",
		date.Format("L"),
		date.CustomFormat("DD"),
        date.CustomFormat("MMMM")) //The 29/05/1980 was a Thursday in May 
}

Formatters

  • Standard
    "LT":   10:20 AM,
    "LTS":  10:20:00 AM,
    "L":    20/05/2018,
    "l":    20/5/2018,
    "LL":   May 20, 2018,
    "ll":   May 20, 2018,
    "LLL":  May 20, 2018 10:20 AM,
    "lll":  May 20, 2018 10:20 AM,
    "LLLL": Sunday, May 20, 2018 10:20 AM,
    "llll": Sun, May 20, 2018 10:20 AM,
    "":     2018-05-20 10:20:00 +0000 UTC,
  • Custom
    "MMMM": Long Month,
    "MMM":  Month,
    "MM":   Zero Number Month,
    "M":    Number Month,
    "YYYY": Long Year,
    "YY":   Year,
    "DD":   Long Day,
    "D":    Day,
    "dd":   Long Number Day,
    "d":    Number Day,
    "hh":   Long Hour,
    "h":    Hour,
    "mm":   Long Minute,
    "m":    Minute,
    "ss":   Long Second,
    "s":    Second

Contributing

Please feel free to make suggestions, create issues, fork the repository and send pull requests!

To do:

  • Implement Standard Format
  • Implement Custom Format
  • Implement Now(), Date() and DateTime() initializers
  • Implement Relative Time (FromNow, StartOf ...)
  • Implement CalendarTime (add, subtract, calendar)

License

MIT License © Guilherme Caruso