Code Monkey home page Code Monkey logo

pocket-core's Introduction

Pocket Core

Official golang implementation of the Pocket Network Protocol.

Overview

The Pocket Core application will allow anyone to spin up a Pocket Network full node, with options to enable/disable functionality and modules according to each deployment. For more information on Pocket Network, visit pokt.network.

Table of Contents

Installation

# Build local binary
git clone [email protected]:pokt-network/pocket && \
cd pocket && \
go build app/cmd/pocket_core/pocket.go

# Assign local binary and add to your `PATH`  if you'd like to use it without direct reference to the binary.
export POKT=$(pwd)/main

TIP: You can find alternative ways of installing pocket (e.g. homebrew) via the instructions here.

Usage

To run the Pocket Core binary you can use the following flags alongside the pocket executable:

Usage:
  pocket [command]

Available Commands:
  accounts    account management
  apps        application management
  completion  Generate the autocompletion script for the specified shell
  gov         governance management
  help        Help about any command
  nodes       node management
  query       query the blockchain
  reset       Reset pocket-core
  start       starts pocket-core daemon
  stop        Stop pocket-core
  util        utility functions
  version     Get current version

Flags:
      --datadir string            data directory (default is $HOME/.pocket/
  -h, --help                      help for pocket
      --node string               takes a remote endpoint in the form <protocol>://<host>:<port>
      --persistent_peers string   a comma separated list of PeerURLs: '<ID>@<IP>:<PORT>,<ID2>@<IP2>:<PORT>...<IDn>@<IPn>:<PORT>'
      --remoteCLIURL string       takes a remote endpoint in the form of <protocol>://<host> (uses RPC Port)
      --seeds string              a comma separated list of PeerURLs: '<ID>@<IP>:<PORT>,<ID2>@<IP2>:<PORT>...<IDn>@<IPn>:<PORT>'

Use "pocket [command] --help" for more information about a command.

For more detailed command information, see the usage section.

Documentation

Visit our user documentation for tutorials and technical information on the Pocket Network.

Portal

The Portal to the Pocket Network is provided by Pocket Network Inc.

Database Snapshots

Snapshots are provided by Liquify LTD details on how to access the snapshots can be found in snapshot.md

Pocket Pruner

An offline pruning tool is provided by C0D3R. The tool is available in their GitHub repository.

Accessing TestNet

TestNet information can be found at testnet.md and is maintained by the nodefleet.org team.

Charts & Analytics

Key charts & analytics are provided by POKTScan and C0D3R.

Running the tests

To run the Pocket Core unit tests, go test -short -v -p 1 ./...

Contributing

Please read CONTRIBUTING.md for details on contributions and the process of submitting pull requests.

Seeds (MainNet & TestNet)

Seeds are maintained by NodeFleet.

You can find all the details at pokt-network/pocket-seeds.

Docker Image

GitHub Packages is used to maintain docker images via this workflow.

The latest images can be found here.

The latest image can be pulled like so:

docker pull ghcr.io/pokt-network/pocket-v0:latest

Support & Contact

GPokT

You can also use our chatbot, GPokT, to ask questions about Pocket Network. As of updating this documentation, please note that it may require you to provide your own LLM API token. If the deployed version of GPokT is down, you can deploy your own version by following the instructions here.

License

This project is licensed under the MIT License; see the LICENSE.md file for details


pocket-core's People

Contributors

addiaddiaddi avatar andrew-pohl avatar aqt01 avatar benvangithub avatar blockjoe avatar bmmpxf avatar edjroz avatar fredteumer avatar h5law avatar iajrz avatar immunity20 avatar jacklaing avatar jeremybeal11 avatar jessicadaugherty avatar jorgecuesta avatar julio-jimenez avatar kinesis-agent avatar lander2k2 avatar lookfirst avatar luyzdeleon avatar msmania avatar nelcolon avatar nodiesblade avatar nymd avatar okdas avatar olshansk avatar omahs avatar oten91 avatar rafaelemanuelmedrano avatar stevenmartinez94 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pocket-core's Issues

Create readme

Create the README for the project with the following:

  • Overview (link to whitepaper)
  • How to install
  • How to run it
  • Advanced usage (link to wiki page)
  • How to contribute (link to development setup guide)

Data Directory Constant Path

The datadirectory should represent the working directory for the client application. Create a constant path known as the datadirectory that is configured upon launch.

Create JSON Information Response

Turn this into readable JSON data for information endpoints

"Endpoint: :/v1/dispatch/serve\n" +
"Method: DispatchServe\n" +
"Parameters:\n" +
"\t1) DeveloperID\n" +
"Returns: SessionID\n" +
"Example: POST: {"method":"web3_clientVersion","params":[]}"

Dep path bug

The old path reflected my local environment of pocket_network/pocket-core
Changed to pokt-network/pocket-core as shown in github.com. This fixes dep path bug

Create session ID

Create a dummy interface to (eventually) derive a publicly verifiable pseudorandom sessionID

For now this can be whatever, just make it cryptographically swappable

Build a Binary

Ensure that a binary can be easily built from this application.

If not, restructure.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.