You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+36-11Lines changed: 36 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
# Description
6
6
7
-
**go-simple-serializer** (aka GSS) is a simple library for serializing/deserializing objects that aims to decrease the burden on developers to support multiple serialization formats in their applications.
7
+
**go-simple-serializer** (aka GSS) is a simple library for serializing/deserializing objects that aims to decrease the burden on developers to support multiple serialization formats in their applications. GSS supports a variety of operating systems, architectures, and use cases. A CLI is released for Microsoft Windows, Linux distributions, and [Darwin](https://en.wikipedia.org/wiki/Darwin_%28operating_system%29) platforms.
8
8
9
9
Using cross compilers, this library can also be called by other languages, including `C`, `C++`, `Python`, and `JavaScript`. This library is cross compiled into a Shared Object file (`*.so`), which can be called by `C`, `C++`, and `Python` on Linux machines. This library is also compiled to pure `JavaScript` using [GopherJS](https://github.com/gopherjs/gopherjs), which can be called by [Node.js](https://nodejs.org) and loaded in the browser. See the examples folder for patterns that you can use.
10
10
@@ -14,17 +14,17 @@ GSS supports the following formats.
`hcl` and `hcl2` implementation is fragile and very much in `alpha`. The other formats are well-supported.
30
30
@@ -81,10 +81,10 @@ See [go-simple-serializer](https://godoc.org/github.com/spatialcurrent/go-simple
81
81
GSS is built as a module. In modern JavaScript, the module can be imported using [destructuring assignment](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment).
In legacy JavaScript, you can use the `gss.main.js` file that simply adds `gss` to the global scope.
87
+
In legacy JavaScript, you can use the `gss.global.js` file that simply adds `gss` to the global scope.
88
88
89
89
**Android**
90
90
@@ -103,7 +103,30 @@ A variant of the `Convert` function is exported in a Shared Object file (`*.so`)
103
103
104
104
# Releases
105
105
106
-
**go-simple-serializer** is currently in **alpha**. See releases at https://github.com/spatialcurrent/go-simple-serializer/releases.
106
+
**go-simple-serializer** is currently in **alpha**. See releases at https://github.com/spatialcurrent/go-simple-serializer/releases. See the **Building** section below to build from scratch.
107
+
108
+
**JavaScript**
109
+
110
+
-`gss.global.js`, `gss.global.js.map` - JavaScript global build with source map
111
+
-`gss.global.min.js`, `gss.global.min.js.map` - Minified JavaScript global build with source map
112
+
-`gss.mod.js`, `gss.mod.js.map` - JavaScript module build with source map
113
+
-`gss.mod.min.js`, `gss.mod.min.js.map` - Minified JavaScript module with source map
114
+
115
+
**Darwin**
116
+
117
+
-`gss_darwin_amd64` - CLI for Darwin on amd64 (includes `macOS` and `iOS` platforms)
118
+
119
+
**Linux**
120
+
121
+
-`gss_linux_amd64` - CLI for Linux on amd64
122
+
-`gss_linux_amd64` - CLI for Linux on arm64
123
+
-`gss_linux_amd64.h`, `gss_linuxamd64.so` - Shared Object for Linux on amd64
124
+
-`gss_linux_armv7.h`, `gss_linux_armv7.so` - Shared Object for Linux on ARMv7
125
+
-`gss_linux_armv8.h`, `gss_linux_armv8.so` - Shared Object for Linux on ARMv8
126
+
127
+
**Windows**
128
+
129
+
-`gss_windows_amd64.exe` - CLI for Windows on amd64
107
130
108
131
# Examples
109
132
@@ -149,6 +172,8 @@ See the `examples/js/index.js` file. You can run the example with `make run_exa
149
172
150
173
# Building
151
174
175
+
Use `make help` to see help information for each target.
176
+
152
177
**CLI**
153
178
154
179
The `make build_cli` script is used to build executables for Linux and Windows.
0 commit comments