Awesome Open Source
Awesome Open Source

Project logo

Sonr

CodeFactor Status Go Reference Go Report Card GitHub Issues GitHub Pull Requests License


Build privacy-preserving, user-centric applications, on a robust, rapid-scaling platform designed for interoperability, and total digital autonomy.

Table of Contents

About

Sonr aims to be the most immersive and powerful DWeb experience for both Users and Developers alike. We believe the best way to onboard the next billion users is to create a cohesive end-to-end platform thats composable and interoperable with all existing protocols.

For a more in-depth technical look into the Sonr ecosystem please refer to the Architecture Decision Records.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

What things you need to install the software and how to install them.

Installing

A step by step series of examples that tell you how to get a development env running.

Installing Protocol Buffers

brew install protobuf

Installing Ignite

curl https://get.ignite.com/cli! | bash

Installing Gomobile - for building the Motor library

go install golang.org/x/mobile/cmd/[email protected]
gomobile init

Running the tests

Explain how to run the automated tests for this system.

Setup Test Environment

Create file named .env in project root and set the following variables:

BLOCKCHAIN_REST=
BLOCKCHAIN_FAUCET=
BLOCKCHAIN_RPC=
IPFS_ADDRESS=
IPFS_API_ADDRESS=
VAULT_API_ADDRESS=
VAULT_ENDPOINT=

Refer to .env.example for typical values to use. If not set, default values will be used in place.

Motor Node Tests

Run a test for a specific method

cd pkg/motor
go test -run CreateAccount

Run a specfic test inside a test suite

cd pkg/motor
go test -run MotorTestSuite -testify.m LoginWithKeys

Run a test suite

cd pkg/motor
go test -run MotorTestSuite

Run ALL motor tests

cd pkg/motor
go test

Blockchain Tests

Get the chain running

ignite chain serve

Test it with grpc_cli

grpc_cli ls 137.184.190.146:9090 sonrio.sonr.bucket.Query

Outputs:

Params
WhereIs
WhereIsByCreator
WhereIsAll

Running simulation tests

ignite chain simulate

Usage

This repo serves as a pseudo-monorepo for the Sonr platform. You can find details on the organization of this project in structure.

Built Using

List of the main frameworks and tools used to build this project.

  • Libp2p - Networking layer
  • Cosmos - Blockchain Framework
  • IPFS - Storage Module
  • HNS - Decentralized DNS

Authors

See also the list of contributors who participated in this project.

Acknowledgements

Partners, collaborators, compliance, or just pure appreciation!

Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Golang (171,926
Blockchain (17,678
Cryptocurrency (8,172
P2p (3,612
Ipfs (2,941
Web3 (2,862
Cosmos (1,275
Cosmos Sdk (174
Libp2p (163
Hns (22
Sonr (3