Skip to content

Mincekaya/okp4d

 
 

Repository files navigation

okp4 github banner

       

𝒐𝒌𝒑4𝒅

lint build test discord conventional commits license

OKP4 is a public dPoS layer 1 specifically designed to enable communities to trustlessly share data, algorithms and resources to build the Dataverse - An open world where everybody can create or participate in custom ecosystems (with common governance mechanisms, sharing rules, business models...) to build a new generation of dApps way beyond Decentralized Finance.

The protocol

okp4d is the node of the OKP4 network built on the Cosmos SDK 💫 & Tendermint consensus, and designed to become a hub of incentivized data providers, developers, data scientists & users collaborating to generate value from data and algorithms.

Read more in the introduction blog post. For a high-level overview of the OKP4 protocol and network economics, check out the white paper.

OKP4 Networks

Network Status Description Chain-ID URL
devnet Developers-focused network of our blockchain for build/test purposes. okp4-devnet-1 api: https://api.devnet.okp4.network
rpc: https://api.devnet.okp4.network:443/rpc
testnet 🚧 The easiest place to create test Data Spaces if you're not quite ready yet to dive into building applications on our main network. It is also the ideal place to start as a node operator. - -
mainnet 🔜 - -

Want to become a validator?

Validators are responsible for securing the okp4 network. Validator responsibilities include maintaining a functional node with constant uptime and providing a sufficient amount of $KNOW as stake. In exchange for this service, validators receive block rewards and transaction fees.

Want to become a validator? 👉 Checkout the documentation!

Developing & contributing

okp4d is written in Go and built using Cosmos SDK.

Prerequisites

  • install Go 1.18+ following instructions from the official Go documentation;
  • verify that Docker is properly installed and if not, follow the instructions for your environment;
  • the project comes with a convenient Makefile so verify that make is properly installed.

Build

To build the okp4d node, invoke the goal build of the Makefile:

make build

The binary will be generated under the folder target/dist.

Supported platforms

The okp4d blockchain currently supports the following builds:

Platform Arch Status
Darwin amd64
Darwin arm64
Linux amd64
Linux arm64
Windows amd64 ️🚫
Not supported

Note: as the blockchain depends on CosmWasm/wasmvm, we only support the targets supported by this project.

Releases

All releases can be found here.

okp4d follows the Semantic Versioning 2.0.0 to determine when and how the version changes, and we also apply the philosophical principles of release early - release often.

Docker image

A docker image is available on Docker hub:

docker pull okp4/okp4d:latest

Get the documentation

docker run okp4/okp4d:latest --help

Query a running network

Example:

API_URL=https://api.devnet.okp4.network:443/rpc
WALLET=okp41pmkq300lrngpkeprygfrtag0xpgp9z92c7eskm

docker run okp4/okp4d:latest query bank balances $WALLET --chain-id okp4-devnet-1 --node $API_URL

Create a wallet

docker run -v $(pwd)/home:/home okp4/okp4d:latest keys add my-wallet --keyring-backend test --home /home 

Start a node

Everything you need to start a node and even more is explained here : https://docs.okp4.network/docs/nodes/run-node

MONIKER=node-in-my-name
CHAIN_ID=localnet-okp4-1

docker run -v $(pwd)/home:/home okp4/okp4d:latest init $MONIKER --chain-id $CHAIN_ID --home /home 

This will create a home folder, you can then update the config/genesis.json with one of this ones : https://github.com/okp4/okp4d/tree/main/chains/

Join a running network

Set persistent_peers in config/config.toml file.

Then start the node

docker run -v $(pwd)/home:/home okp4/okp4d:latest start --home /home

Bug reports & feature requests

If you notice anything not behaving how you expected, if you would like to make a suggestion or would like to request a new feature, please open a new issue. We appreciate any help you're willing to give!

Don't hesitate to ask if you are having trouble setting up your project repository, creating your first branch or configuring your development environment. Mentors and maintainers are here to help!

Community

The OKP4 Discord Server is our primary chat channel for the open-source community, software developers and node operators.

Please reach out to us and say hi 👋, we're happy to help there.

About

⛓️ Open Knowledge Protocol For...

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 91.7%
  • Makefile 6.9%
  • Dockerfile 1.4%