The structure of this project is hugely inspired by scalapb-json4s
Include in your build.sbt
file
libraryDependencies += "io.github.scalapb-json" %% "scalapb-circe" % "0.4.2"
for scala-js
libraryDependencies += "io.github.scalapb-json" %%% "scalapb-circe" % "0.4.2"
libraryDependencies += "io.github.scalapb-json" %% "scalapb-circe-macros" % "0.4.2"
see https://github.com/scalapb-json/scalapb-circe/tree/0.2.x
There are four functions you can use directly to serialize/deserialize your messages:
JsonFormat.toJsonString(msg) // returns String
JsonFormat.toJson(msg) // returns Json
JsonFormat.fromJsonString(str) // return MessageType
JsonFormat.fromJson(json) // return MessageType