Home

Awesome

Algorand C++ SDK

This repo is providing C++ sdk on algorand chain.

šŸ’Ž Algorand SDK

šŸ“‘ Specifications

The Algorand SDK provides developers with an easy way for devices to interact with Algorand chain.

We are doing our best to achieve those goals:

At this sdk, there are some todo list to add new features:

āš ļø IMPORTANT

šŸ§­ Repository structure

.
ā”œā”€ā”€ CMakeLists.txt      # root CMakeLists: use it if you want to try the examples
ā”œā”€ā”€ examples            # examples
ā”‚   ā”œā”€ā”€ unix            # Unix example to run the wallet on your machine or Raspberry Pi...
ā”‚   ā””ā”€ā”€ ...             # more to come
ā”œā”€ā”€ external            # external libraries
ā”‚   ā”œā”€ā”€ mpack           # we've got mpack for example
ā”‚   ā””ā”€ā”€ cJson           # cJSON to parse JSON payloads
ā”œā”€ā”€ inc                 # public include directory: you'll need those files to use the library
ā”‚   ā”œā”€ā”€ vertices.h      # for example, `vertices.h`
ā”‚   ā””ā”€ā”€ ...
ā”œā”€ā”€ src                 # 
ā”‚   ā”œā”€ā”€ include         # "private" header files, used within the library
ā”‚   ā”œā”€ā”€ algorand        # implementation of Vertices with Algorand. The Algorand provider is the first implemented.
ā”‚   ā”œā”€ā”€ CMakeLists.txt  # CMake of the Vertices SDK, exports a package to be imported in your project, see examples' CMakeLists
ā”‚   ā””ā”€ā”€ ...             # source files
ā”œā”€ā”€ tests               # 
ā”‚   ā”œā”€ā”€ src             # test sources is stored on this folder.
ā”‚   ā””ā”€ā”€ ...             
ā””ā”€ā”€ utils               # tools to make things easier, clearer, smarter :) 
    ā””ā”€ā”€ utils.cmake

šŸ§° Installation

This repository is intended to be used as an external component to your project such as a submodule.

# clone into a directory
git clone <url> [path]
# clone into a directory including its submodules
git clone --recurse-submodules <url> [path]
# clone as submodule into an optionally specified location
git submodule add <url> [path]

Configuration

A config file provides an easy way to configure the SDK: include/vertices_config.h. The file is fully documented.

Compilation

CMake is currently used to build the library and examples (GNU Make and Visual Studio Make is on the roadmap).

CMake

In order to build the source using CMake in a separate directory (recommended), just enter at the command line:

mkdir build && cd build
cmake ..

# build static library: lib/libvertices.a
make vertices

# build Unix example
make unix_example

Make

šŸ‘Ž Soon.

šŸš€ Getting started

šŸ‘‰ More to come about how to import the package into your build system.

šŸ’” This Algorand SDK is providing examples with various major SDKs. You can probably copy-paste our source code into your project šŸ™‚.

Examples

Full documentation is available at docs.vertices.network.

šŸ“ Tests

Make sure you have cpputest installed:

From /tests you will be able to launch the unique command to run all the tests:

make all

Checkout the Readme for more information.

šŸ™Œ Contributing