Skip to content

theblitlabs/parity-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Parity Protocol

Go Version PostgreSQL Docker License

Introduction

Parity Protocol is a cutting-edge distributed computation network that enables secure and verifiable task execution across verified nodes. Built and maintained by Blit Labs, this protocol offers a cloudless architecture that prioritizes security, reliability, and efficient resource utilization.

📚 Read the Complete Documentation

System Architecture

The Parity Protocol ecosystem consists of five core components, each serving a specific purpose in the network:

Core Components

  • Manages secure task execution in isolated Docker environments
  • Provides comprehensive execution metrics and system usage analytics
  • Ensures computational integrity and optimal resource allocation
  • Orchestrates task distribution and validation processes
  • Handles node registration and reputation management
  • Implements real-time communication via webhooks
  • Delivers a seamless interface for task submission and monitoring
  • Provides robust APIs for comprehensive task management
  • Features real-time execution tracking and detailed analytics
  • Implements a custom ERC20 token for network operations
  • Powers protocol economics and staking mechanisms
  • Facilitates automated reward distribution
  • Provides secure token management capabilities
  • Features enterprise-grade authentication system
  • Enables efficient transaction handling

Supporting Tools

Tool Purpose
gologger Advanced structured logging for Go applications
deviceid Robust device identification system
keystore Secure cryptographic key management
go-wallet-sdk Comprehensive Go SDK for blockchain interactions

Getting Started

System Requirements

Before beginning, ensure your system meets these prerequisites:

  • Go: Version 1.22.7 or higher
  • PostgreSQL: Version 14.0 or higher
  • Docker: Latest stable version
  • Make: Latest version
  • Git: Latest version

Installation Guide

1. Repository Setup

mkdir parity-workspace && cd parity-workspace

# Clone core repositories
for repo in server runner client token wallet; do
    git clone https://github.com/theblitlabs/parity-${repo}.git
done

2. Initial Configuration

# Set up token and wallet first
cd parity-token
# Follow README instructions for:
# 1. Token contract deployment
# 2. Parameter configuration
# 3. Initial distribution setup

cd ../parity-wallet
# Follow README instructions for:
# 1. Wallet infrastructure setup
# 2. Authentication configuration
# 3. Token contract integration

# Copy example configs for core components
for component in server runner client; do
    cp parity-${component}/.env.sample \
       parity-${component}/.env
done
Deployed Addresses

For reference, here are the current deployed addresses on Ethereum:

  • Stake Wallet Address: 0x261259e9467E042DBBF372906e17b94fC06942f2
  • Token Contract Address: 0x844303bcC1a347bE6B409Ae159b4040d84876024

3. Component Configuration

Each component requires specific configuration. Follow these steps carefully:

Server Setup
  1. Navigate to parity-server directory
  2. Open .env
  3. Configure according to the server documentation
  4. Key focus areas:
    • Database configuration
    • Blockchain connection parameters
    • Network settings
Runner Setup
  1. Navigate to parity-runner directory
  2. Open .env
  3. Configure according to the runner documentation
  4. Key focus areas:
    • Docker environment settings
    • Server connection parameters
    • Resource allocation limits
Client Setup
  1. Navigate to parity-client directory
  2. Open .env
  3. Configure according to the client documentation
  4. Key focus areas:
    • API configurations
    • Server connection details
    • Client-specific parameters

⚠️ Important Configuration Notes:

  • Verify all placeholder values are replaced with actual configurations
  • Ensure no port conflicts between components
  • Double-check file permissions
  • Use secure values for authentication tokens and keys

4. Launch Services

Run each component in a separate terminal window:

# Terminal 1: Server
cd parity-server
make build
parity-server auth --private-key YOUR_PRIVATE_KEY
parity-server

# Terminal 2: Runner
cd parity-runner
make build
parity-runner auth --private-key YOUR_PRIVATE_KEY
parity-runner stake --amount 10
parity-runner

# Terminal 3: Client
cd parity-client
make build
parity-client

Contributing

We welcome contributions from the community! Here's how to get started:

  1. Find an Issue Browse our repositories for open issues:

  2. Fork & Clone Fork the relevant repository and create your feature branch:

    git checkout -b feature/amazing-feature
  3. Set Up Development Environment

    make install-hooks
  4. Submit Your Work

    • Follow Conventional Commits guidelines
    • Include comprehensive documentation updates
    • Provide clear descriptions of changes
    • Reference the issue being addressed

📝 For detailed information about each component, please refer to their respective documentation.

About

A decentralized protocol for verifiable distributed compute. Sandboxed execution with modular verification, powering LLM inference and federated learning at scale.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors