cxo
cxo copied to clipboard
CX Object System
中文文档 | по русски
CX Object System
The CXO is objects system, goal of which is sharing any objects. The CXO is low level and designed to build application on top of it
Get Started and API Documentation
See CXO wiki to get this information
API Documentation
See CXO wiki to get this information
Installation and Version
Use dep to use particular version of the CXO. The master branch of the repository points to latest stable release. Actually, it points to alpha-release for now.
To get the release use
go get -u -t github.com/skycoin/cxo/...
Test all packages
go test -cover -race github.com/skycoin/cxo/...
Docker
docker run -ti --rm -p 8870:8870 -p 8871:8871 skycoin/cxo
Development
Modules
-
cmd
- apps-
cxocli
- CLI is admin RPC based tool to control any CXO-node (wiki/CLI). -
cxod
- an averga CXO daemon that accepts all subscriptions
-
-
cxoutils
- basic utilities -
data
- database interfaces, objects and errors-
data/cxds
- CX data store is implementation of key-value store -
data/idxdb
- implementation of index DB -
data/tests
- tests for thedata
interfaces
-
-
node
- TCP transport for CXO-
node/log
- logger -
node/msg
- protocol messages
-
-
skyobject
- CXO core: encode/decode, etc-
registry
- schemas, types, etc,
-
And
-
intro
- examples
Formatting and Coding Style
See CONTRIBUTING.md for details.
Versioning
The CXO uses MAJOR.MINOR versions. Where MAJOR is
- API changes
- protocol changes
- data representation changes
and MINOR is
- small API changes
- fixes
- improvements
Thus, DB files are not compatible between different major versions. Nodes with different major versions can't communicate. Saved data may have another representation.
Versions
1.0
not defined
2.1
- git tag:
v2.1
- commit:
d4e4ab573c438a965588a651ee1b76b8acbb3724
Gopkg.toml
[[constraint]]
name = "github.com/skycoin/cxo"
revision = "d4e4ab573c438a965588a651ee1b76b8acbb3724"
or
[[constraint]]
name = "github.com/skycoin/cxo"
version = "v2.1"
3.0
- git tag:
v3.0
- commit:
8bc2f995634cd46d1266e2120795b04b025e0d62
Gopkg.toml
[[constraint]]
name = "github.com/skycoin/cxo"
revision = "8bc2f995634cd46d1266e2120795b04b025e0d62"
or
[[constraint]]
name = "github.com/skycoin/cxo"
version = "v3.0"
Dependencies
Dependencies are managed with dep. The dep
place all dependencies in vendor/
subfolder. Install the dep
using link
above and call
dep ensure
if you have problems with building the CXO.