blob: 5bff8dca2b239d78e0644b155e32e2c0cdf15f40 [file] [log] [blame] [view]
Haibo Huangb0bee822021-02-24 15:40:15 -08001# JsonCpp
2
3[![badge](https://img.shields.io/badge/conan.io-jsoncpp%2F1.8.0-green.svg?logo=data:image/png;base64%2CiVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAMAAAAolt3jAAAA1VBMVEUAAABhlctjlstkl8tlmMtlmMxlmcxmmcxnmsxpnMxpnM1qnc1sn85voM91oM11oc1xotB2oc56pNF6pNJ2ptJ8ptJ8ptN9ptN8p9N5qNJ9p9N9p9R8qtOBqdSAqtOAqtR%2BrNSCrNJ/rdWDrNWCsNWCsNaJs9eLs9iRvNuVvdyVv9yXwd2Zwt6axN6dxt%2Bfx%2BChyeGiyuGjyuCjyuGly%2BGlzOKmzOGozuKoz%2BKqz%2BOq0OOv1OWw1OWw1eWx1eWy1uay1%2Baz1%2Baz1%2Bez2Oe02Oe12ee22ujUGwH3AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfgBQkREyOxFIh/AAAAiklEQVQI12NgAAMbOwY4sLZ2NtQ1coVKWNvoc/Eq8XDr2wB5Ig62ekza9vaOqpK2TpoMzOxaFtwqZua2Bm4makIM7OzMAjoaCqYuxooSUqJALjs7o4yVpbowvzSUy87KqSwmxQfnsrPISyFzWeWAXCkpMaBVIC4bmCsOdgiUKwh3JojLgAQ4ZCE0AMm2D29tZwe6AAAAAElFTkSuQmCC)](https://bintray.com/theirix/conan-repo/jsoncpp%3Atheirix)
4[![badge](https://img.shields.io/badge/license-MIT-blue)](https://github.com/open-source-parsers/jsoncpp/blob/master/LICENSE)
5[![badge](https://img.shields.io/badge/document-doxygen-brightgreen)](http://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html)
6[![Coverage Status](https://coveralls.io/repos/github/open-source-parsers/jsoncpp/badge.svg?branch=master)](https://coveralls.io/github/open-source-parsers/jsoncpp?branch=master)
7
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -05008
9[JSON][json-org] is a lightweight data-interchange format. It can represent
10numbers, strings, ordered sequences of values, and collections of name/value
11pairs.
12
13[json-org]: http://json.org/
14
15JsonCpp is a C++ library that allows manipulating JSON values, including
16serialization and deserialization to and from strings. It can also preserve
17existing comment in unserialization/serialization steps, making it a convenient
18format to store user input files.
19
Haibo Huangb0bee822021-02-24 15:40:15 -080020
21## Documentation
22
23[JsonCpp documentation][JsonCpp-documentation] is generated using [Doxygen][].
24
25[JsonCpp-documentation]: http://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html
26[Doxygen]: http://www.doxygen.org
27
28
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050029## A note on backward-compatibility
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050030
Haibo Huangb0bee822021-02-24 15:40:15 -080031* `1.y.z` is built with C++11.
32* `0.y.z` can be used with older compilers.
33* `00.11.z` can be used both in old and new compilers.
34* Major versions maintain binary-compatibility.
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050035
Haibo Huangb0bee822021-02-24 15:40:15 -080036### Special note
37The branch `00.11.z`is a new branch, its major version number `00` is to show that it is
38different from `0.y.z` and `1.y.z`, the main purpose of this branch is to make a balance
39between the other two branches. Thus, users can use some new features in this new branch
40that introduced in 1.y.z, but can hardly applied into 0.y.z.
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050041
Haibo Huangb0bee822021-02-24 15:40:15 -080042## Using JsonCpp in your project
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050043
Haibo Huangb0bee822021-02-24 15:40:15 -080044### The vcpkg dependency manager
45You can download and install JsonCpp using the [vcpkg](https://github.com/Microsoft/vcpkg/) dependency manager:
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050046
Haibo Huangb0bee822021-02-24 15:40:15 -080047 git clone https://github.com/Microsoft/vcpkg.git
48 cd vcpkg
49 ./bootstrap-vcpkg.sh
50 ./vcpkg integrate install
51 ./vcpkg install jsoncpp
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050052
Haibo Huangb0bee822021-02-24 15:40:15 -080053The JsonCpp port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request](https://github.com/Microsoft/vcpkg) on the vcpkg repository.
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050054
Haibo Huangb0bee822021-02-24 15:40:15 -080055### Amalgamated source
56https://github.com/open-source-parsers/jsoncpp/wiki/Amalgamated-(Possibly-outdated)
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050057
Haibo Huangb0bee822021-02-24 15:40:15 -080058### The Meson Build System
59If you are using the [Meson Build System](http://mesonbuild.com), then you can get a wrap file by downloading it from [Meson WrapDB](https://wrapdb.mesonbuild.com/jsoncpp), or simply use `meson wrap install jsoncpp`.
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050060
Haibo Huangb0bee822021-02-24 15:40:15 -080061### Other ways
62If you have trouble, see the [Wiki](https://github.com/open-source-parsers/jsoncpp/wiki), or post a question as an Issue.
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050063
Haibo Huangb0bee822021-02-24 15:40:15 -080064## License
Derek Sollenberger2eb3b4d2016-01-11 14:41:40 -050065
66See the `LICENSE` file for details. In summary, JsonCpp is licensed under the
67MIT license, or public domain if desired and recognized in your jurisdiction.