Sonr
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 thatβs 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/gomobile@latest
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!