Need help with jsonc?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

muhammadmuzzammil1998
138 Stars 11 Forks MIT License 26 Commits 1 Opened issues

Description

JSON with comments for Go!

Services available

!
?

Need anything else?

Contributors list

# 90,578
HTML
github-...
Shell
carbon
24 commits
# 79,751
CSS
HTML
vscode
vscode-...
1 commit

jsonc

JSON with comments for Go!
travisci

JSONC is a superset of JSON which supports comments. JSON formatted files are readable to humans but the lack of comments decreases readability. With JSONC, you can use block (

/* */
) and single line (
//
) comments to describe the functionality. Microsoft VS Code also uses this format in their configuration files like
settings.json
,
keybindings.json
,
launch.json
, etc.

jsonc

What this package offers

JSONC for Go offers ability to convert and unmarshal JSONC to pure JSON. It also provides functionality to read JSONC file from disk and return JSONC and corresponding JSON encoding to operate on. However, it only provides a one way conversion. That is, you can not generate JSONC from JSON. Read documentation for detailed examples.

Usage

go get
it

Run

go get
command to install the package.
$ go get muzzammil.xyz/jsonc

Import jsonc

Import

muzzammil.xyz/jsonc
to your source file.
package main

import ( "fmt"

"muzzammil.xyz/jsonc" )

Test it

Now test it!

func main() {
  j := []byte(`{"foo": /*comment*/ "bar"}`)
  jc := jsonc.ToJSON(j) // Calling jsonc.ToJSON() to convert JSONC to JSON
  if jsonc.Valid(jc) {
    fmt.Println(string(jc))
  } else {
    fmt.Println("Invalid JSONC")
  }
}
$ go run app.go
{"foo":"bar"}

Contributions

Contributions are welcome but kindly follow the Code of Conduct and guidelines. Please don't make Pull Requests for typographical errors, grammatical mistakes, "sane way" of doing it, etc. Open an issue for it. Thanks!

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.