epoch alternatives and similar packages
Based on the "JSON" category.
Alternatively, view epoch alternatives based on common mentions on social networks and blogs.
-
jsonparser
One of the fastest alternative JSON parser for Go that does not require schema -
fastjson
Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection -
marshmallow
Marshmallow provides a flexible and performant JSON unmarshalling in Go. It specializes in dealing with unstructured struct - when some fields are known and some aren't, with zero performance overhead nor extra coding needed. -
jsondiff
Compute the diff between two JSON documents as a series of RFC6902 (JSON Patch) operations -
JSON-to-Proto
convert JSON to Protocol Buffers online in your browser instantly -
ujson
µjson - A fast and minimal JSON parser and transformer that works on unstructured JSON -
mapslice-json
Go MapSlice for ordered marshal/ unmarshal of maps in JSON -
ask
A Go package that provides a simple way of accessing nested properties in maps and slices. -
Better Parsing of Unstructured JSON in Go
An error propagating JSON parsing library for Go -
go-jsonerror
Small package which wraps error responses to follow jsonapi.org -
go-parameters
:blue_book: Easily parse incoming parameters and values from an HTTP request -
jsonhandlers
JSON library to expose simple handlers that lets you easily read and write json from various sources.
Static code analysis for 29 languages.
Do you think we are missing an alternative of epoch or a related project?
Popular Comparisons
README
epoch
Contains primitives for marshaling/unmarshaling Unix timestamp/epoch to/from built-in time.Time type in JSON.
Seconds
Seconds since the Epoch(Unix time), e.g.:
{"timestamp":1136239445}
Inherits built-in time.Time type, thus has all it methods, but has custom serializer and deserializer(converts integer into built-in time.Time and vice versa).
Usage Example
package main
import (
"encoding/json"
"fmt"
"github.com/vtopc/epoch"
)
type Request struct {
Timestamp epoch.Seconds `json:"timestamp"`
}
func main() {
var v Request
err := json.Unmarshal([]byte(`{"timestamp":1136239445}`), &v)
if err != nil {
panic(err)
}
fmt.Printf("%+v\n", v)
// Output: {Timestamp:2006-01-03 00:04:05 +0200 EET}
// Also as epoch.Seconds inherits all time.Time's methods one can do next:
fmt.Println(v.Timestamp.Year())
// Output: 2006
fmt.Println(v.Timestamp.UTC().String())
// Output: 2006-01-02 22:04:05 +0000 UTC
}
Milliseconds
Same as epoch.Seconds, but for Epoch(Unix time) in milliseconds, e.g.:
{"timestamp":1136239445999}
StrSeconds
Same as epoch.Seconds, but for strings, e.g.:
{"timestamp":"1136239445"}
StrMilliseconds
Same as epoch.Milliseconds, but for strings, e.g.:
{"timestamp":"1136239445999"}