core

module
v0.6.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2023 License: GPL-3.0

README

Sonr Logo Banner

License buddy pipeline Go Reference Go Report Card

Sonr is a peer-to-peer identity and asset management system that leverages DID Documents, WebAuthn, and IPFS - to provide users with a secure, user-friendly way to manage their digital identity and assets.

Getting Started

You can setup your macOS or Linux machine to be ready for local development with these steps:

git clone https://github.com/sonrhq/core.git       # Clone the repository
sh scripts/install.sh                               # Install dependencies
task                                                # Display the available commands

The install.sh script will install the following tools:

You need to set the following environment variables to run the blockchain:

CONNECT_SERVER_HOST="localhost"
CONNECT_SERVER_PORT="8080"
TLS_CERT_FILE=""
TLS_KEY_FILE=""
ENVIRONMENT="dev"
HIGHWAY_MODE="fiber"

Documentation

Sonr utilizes Mintlify to generate documentation from the source code. To view the documentation, execute task docs from the root directory. Or, visit the documentation site.

Architecture Diagram

Architecture

Repository Structure Map

Repository structure

Usage

task serve command installs dependencies, builds, initializes, and starts your blockchain in development.

Command Reference
* docs:                 Serve the docs locally
* chain:build:          Build the blockchain                  (aliases: build)
* chain:generate:       Generate the protobuf files           (aliases: gen)
* chain:serve:          Serve the blockchain locally          (aliases: serve)
* motor:android:        Bind the Motor Android Framework      (aliases: android)
* motor:ios:            Bind the Motor iOS Framework          (aliases: ios)
* motor:web:            Build the Motor WASM Framework        (aliases: wasm)
* web:dev:              Run the web app in dev mode           (aliases: web)
Publish New Release

To release a new version of your blockchain, create and push a new tag with v prefix. A new draft release with the configured targets will be created.

git tag v0.1
git push origin v0.1

After a draft release is created, make your final changes from the release page and publish it.

Installation

To install the latest version of your blockchain node's binary, execute the following command on your machine:

curl https://get.ignite.com/sonrhq/core! | sudo bash

Production endpoints are available at the following URLs:

Community

For help and discussion around DID Documents, best practices, and more, join us on Discord.

For updates on the Sonr Daemon, follow this repo on GitHub.

For feature requests, bugs, or technical questions, submit feedback here. For general inquiries or inclusion in our upcoming feature betas, reach out on Twitter.

Directories

Path Synopsis
app
cmd
internal
crypto
It converts a `WebauthnCredential` to a `webauthn.Credential`
It converts a `WebauthnCredential` to a `webauthn.Credential`
nullify
Package nullify provides methods to init nil values structs for test assertion.
Package nullify provides methods to init nil values structs for test assertion.
types
x
domain/types
Package types is a reverse proxy.
Package types is a reverse proxy.
identity/types
Main DID Document Constructor Methods I.e.
Main DID Document Constructor Methods I.e.
service/types
Package types is a reverse proxy.
Package types is a reverse proxy.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL