Skip to content
/ core Public
forked from onsonr/sonr

Official Sonr Node Library for Handling Networking and Data

Notifications You must be signed in to change notification settings

ntindle/core

 
 

Repository files navigation

Sonr Core

Sonr Core is a module for common interfaces used by the following repositories:

  • sonr-io/highway
  • sonr-io/motor
  • sonr-io/sonr

Description

Sonr is building the most immersive 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 this we built our Networking layer in Libp2p and our Layer 1 Blockchain with Starport. Our network comprises of two separate nodes: Highway and Motor, which each have a specific use case on the network.

Getting Started

Dependencies

Installing

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

go get -u https://github.com/sonr-io/core

Configuration

This project is a pseudo-monorepo, meaning it has a single root directory and all of its packages are in subdirectories. The structure is as follows:

/channel         ->        Real-time Key/Value Store
/common          ->        Core data types and functions.
/device          ->        Node Device management
/docs            ->        Documentation.
/exchange        ->        Data Transfer related Models.
/host            ->        Libp2p Host Configuration
/identity        ->        Identity management models and interfaces
/node            ->        Highway and Motor node builder configuration
/proto           ->        Protobuf Definition Files.
/transmit        ->        Protocol for byte transmission between nodes
/types           ->        Protobuf Compiled Types
  └─ cpp         ->        +   C++ Definition Files
  └─ go          ->        +   Golang Definition Files
  └─ java        ->        +   Java Definition Files
/wallet          ->        Interfaces for managing Universal Wallet

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Authors

Contributors names and contact info

  • Prad Nukala

License

This project facilitated under Sonr Inc. is distributed under the GPLv3 License. See LICENSE.md for more information.

Acknowledgments

Inspiration, code snippets, etc.

About

Official Sonr Node Library for Handling Networking and Data

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 74.7%
  • Go 15.9%
  • JavaScript 9.4%