{"id":31959592,"url":"https://github.com/stateset/core","last_synced_at":"2026-07-19T04:35:51.853Z","repository":{"id":132093449,"uuid":"540129585","full_name":"stateset/core","owner":"stateset","description":"Stateset Core proof-of-stake node - built with the Cosmos SDK, Tendermint, IBC, CosmWasm","archived":false,"fork":false,"pushed_at":"2025-08-19T01:32:40.000Z","size":3009,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-19T03:27:00.098Z","etag":null,"topics":["cosmos","cosmwasm","ibc","tendermint"],"latest_commit_sha":null,"homepage":"https://app.stateset.zone","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stateset.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-09-22T19:02:36.000Z","updated_at":"2025-08-19T01:32:43.000Z","dependencies_parsed_at":"2025-08-01T02:29:35.704Z","dependency_job_id":"777cba25-84f9-4c44-a432-81a9d0fe11d9","html_url":"https://github.com/stateset/core","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/stateset/core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stateset%2Fcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stateset%2Fcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stateset%2Fcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stateset%2Fcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stateset","download_url":"https://codeload.github.com/stateset/core/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stateset%2Fcore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279019348,"owners_count":26086711,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cosmos","cosmwasm","ibc","tendermint"],"created_at":"2025-10-14T15:47:32.729Z","updated_at":"2026-07-19T04:35:51.846Z","avatar_url":"https://github.com/stateset.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stateset Core\n\n**Stateset Core** is a next-generation blockchain built on the Cosmos SDK and CometBFT (Tendermint), designed for intelligent commerce and business automation. It provides a decentralized platform for advanced business processes including smart agreements, invoices, purchase orders, loans, stablecoins (ssUSD), and cross-chain commerce functionality.\n\n**Quick Links**: [Run a local node](#running-the-blockchain-node) | [CLI guide](docs/cli-guide.md) | [Security](docs/SECURITY.md) | [Tokenomics](docs/TOKENOMICS.md) | [Contributing](CONTRIBUTING.md)\n\n## Prerequisites\n\nBefore building and running the Stateset blockchain node, ensure you have the following dependencies installed:\n\n- **Go 1.23+**: [Download and install Go](https://golang.org/dl/)\n- **Git**: For cloning the repository\n- **Make**: For using build scripts (optional)\n\n### Verify Go Installation\n\n```bash\ngo version\n```\n\nYou should see output similar to `go version go1.23.0 linux/amd64`.\n\n## Building the Blockchain Node\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/stateset/core.git\ncd core\n```\n\n### 2. Install Dependencies\n\n```bash\ngo mod download\ngo mod tidy\n```\n\n### 3. Build the Node Binary\n\n\u003e **Note:** `make build` and `make install` will now verify that your local toolchain meets the Go ≥1.23 requirement before compiling.\n\n#### Using Make (Recommended)\n\n```bash\n# Build the binary (outputs to ./build/statesetd)\nmake build\n\n# Or install directly to GOPATH/bin\nmake install\n```\n\n#### Using Go directly\n\n```bash\n# Build the binary\ngo build -o statesetd ./cmd/statesetd\n\n# Or install it to your GOPATH/bin\ngo install ./cmd/statesetd\n```\n\nAfter successful compilation, you should have a `statesetd` binary in your current directory (or in your `$GOPATH/bin` if you used `go install`).\n\n## CLI Reference\n\nA quick command reference for module transactions and queries lives in [docs/cli-guide.md](docs/cli-guide.md). Keep it handy while operating a node.\n\n### 4. Verify the Build\n\n```bash\n# If built with make\n./build/statesetd version\n\n# If built with go build\n./statesetd version\n\n# If installed with make install or go install\nstatesetd version\n```\n\n### Available Make Targets\n\nThe Makefile provides several convenient targets:\n\n```bash\nmake build          # Build the binary\nmake install        # Install to GOPATH/bin\nmake dev            # Quick dev setup (build + init + start)\nmake init           # Initialize development blockchain\nmake start-dev      # Start development node\nmake reset          # Reset blockchain data\nmake test           # Run tests\nmake deps           # Download dependencies\nmake clean          # Clean build directory\n```\n\n## Running the Blockchain Node\n\n### Quick Start for Development\n\nThe fastest way to get a development blockchain running:\n\n```bash\n# Build and start a development node (automated setup)\nmake dev\n```\n\nThis command will:\n1. Build the binary\n2. Initialize the blockchain with default settings\n3. Create a validator key\n4. Start the node\n\n### Development Mode (Manual Setup)\n\nFor development and testing purposes, you can run a local single-node blockchain. If you built with `make`, replace `./statesetd` below with `./build/statesetd`.\n\n#### 1. Initialize the Node\n\n```bash\n# Initialize the blockchain with a moniker (name for your node)\n./statesetd init my-stateset-node --chain-id stateset-1\n\n# Create a validator key\n./statesetd keys add validator\n\n# Add genesis account\n./statesetd add-genesis-account $(./statesetd keys show validator -a) 1000000000stake\n\n# Create genesis transaction\n./statesetd gentx validator 1000000stake --chain-id stateset-1\n\n# Collect genesis transactions\n./statesetd collect-gentxs\n```\n\n#### 2. Start the Node\n\n```bash\n# Start the blockchain node\n./statesetd start\n```\n\nThe node will start and begin producing blocks. You should see log output indicating the blockchain is running.\n\n### Production Mode\n\nFor production deployments:\n\n#### 1. Configuration\n\nEdit the configuration files in `~/.statesetd/config/`:\n\n- `config.toml`: Node configuration (P2P, RPC, consensus settings)\n- `app.toml`: Application configuration (API, gRPC, state sync)\n- `genesis.json`: Genesis state of the blockchain\n\n#### 2. Key Management\n\n```bash\n# Import or create validator keys\n./statesetd keys add validator --recover  # To import existing key\n# OR\n./statesetd keys add validator            # To create new key\n```\n\n#### 3. Join Existing Network\n\n```bash\n# Get the genesis file for the network you want to join\ncurl -s https://raw.githubusercontent.com/stateset/networks/main/stateset-1/genesis.json \u003e ~/.statesetd/config/genesis.json\n\n# Add persistent peers to config.toml\n# Edit ~/.statesetd/config/config.toml and add peer nodes\n```\n\n#### 4. Start the Production Node\n\n```bash\n# Start the node\n./statesetd start --home ~/.statesetd\n```\n\n## Using the Node\n\n### Query Commands\n\n```bash\n# Check node status\n./statesetd status\n\n# Query account balance\n./statesetd query bank balances \u003caddress\u003e\n\n# Query all validators\n./statesetd query staking validators\n```\n\n### Transaction Commands\n\n```bash\n# Send tokens\n./statesetd tx bank send \u003cfrom_address\u003e \u003cto_address\u003e \u003camount\u003e --chain-id stateset-1\n\n# Delegate to a validator\n./statesetd tx staking delegate \u003cvalidator_address\u003e \u003camount\u003e --from \u003cyour_key\u003e --chain-id stateset-1\n\n# Vote on governance proposals\n./statesetd tx gov vote \u003cproposal_id\u003e yes --from \u003cyour_key\u003e --chain-id stateset-1\n```\n\n## API and Services\n\nOnce your node is running, you can access various services:\n\n- **RPC Endpoint**: `http://localhost:26657` (Tendermint RPC)\n- **REST API**: `http://localhost:1317` (Cosmos SDK REST)\n- **gRPC**: `localhost:9090` (Cosmos SDK gRPC)\n\n### Enable API Services\n\nTo enable REST and gRPC APIs, edit `~/.statesetd/config/app.toml`:\n\n```toml\n[api]\nenable = true\nswagger = true\naddress = \"tcp://0.0.0.0:1317\"\n\n[grpc]\nenable = true\naddress = \"0.0.0.0:9090\"\n```\n\n## Docker Support (Optional)\n\nYou can also run the node using Docker:\n\n```bash\n# Build Docker image\ndocker build -t stateset/core .\n\n# Run the container\ndocker run -it --rm \\\n  -p 26656:26656 \\\n  -p 26657:26657 \\\n  -p 1317:1317 \\\n  -p 9090:9090 \\\n  -v ~/.statesetd:/root/.statesetd \\\n  stateset/core:latest\n```\n\n## Troubleshooting\n\n### Common Issues\n\n1. **Build Errors**: Ensure you have Go 1.23+ installed and all dependencies are downloaded\n   ```bash\n   go version\n   go mod download\n   go mod tidy\n   ```\n\n2. **Port Conflicts**: If ports are already in use, modify the configuration in `~/.statesetd/config/config.toml` and `app.toml`\n\n3. **Permission Issues**: Ensure the `~/.statesetd` directory has proper permissions\n\n### Logs\n\nView logs for debugging:\n```bash\n# View logs in real-time\n./statesetd start --log_level info\n\n# Or redirect to a file\n./statesetd start \u003e stateset.log 2\u003e\u00261 \u0026\n```\n\n## Contributing\n\nPlease read our [contributing guidelines](CONTRIBUTING.md) before submitting pull requests.\n\n## License\n\nThis project is licensed under the Apache 2.0 License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n## Core Modules\n\nStateset Core includes several specialized modules for business and commerce operations:\n\n### Business Process Modules\n- **Agreement**: Smart contract-based agreements with activation, renewal, and termination capabilities\n- **Invoice**: Advanced invoicing with smart payment routing and factoring options\n- **Purchase Order**: Complete purchase order lifecycle management with financing options\n- **Loan**: Decentralized lending with collateral management and liquidation mechanisms\n- **DID**: Decentralized identity management for business entities\n\n### Financial Modules\n- **Stablecoins**: Native ssUSD stablecoin with conservative reserve management\n- **Orders**: Advanced order management with stablecoin payment integration\n- **Commerce**: Comprehensive commerce module with payment routing and compliance engine\n- **CCTP**: Cross-chain token transfer protocol for interoperability\n\n### Infrastructure Modules\n- **Epochs**: Time-based event scheduling and execution\n- **InterchainQuery**: Cross-chain data querying capabilities\n- **Security**: AI-powered security and threat detection\n- **Analytics**: On-chain analytics and business intelligence\n- **Proof**: Cryptographic proof generation and verification\n\n## Available Transactions subcommands\n\nUsage:\n  statesetd tx [flags]\n  statesetd tx [command]\n\nAvailable Commands:\n                      \n  agreement           agreement transactions subcommands\n  bank                Bank transaction subcommands\n  broadcast           Broadcast transactions generated offline\n  crisis              Crisis transactions subcommands\n  decode              Decode a binary encoded transaction string\n  did                 did transactions subcommands\n  distribution        Distribution transactions subcommands\n  encode              Encode transactions generated offline\n  evidence            Evidence transaction subcommands\n  feegrant            Feegrant transactions subcommands\n  gov                 Governance transactions subcommands\n  ibc                 IBC transaction subcommands\n  ibc-transfer        IBC fungible token transfer transaction subcommands\n  invoice             invoice transactions subcommands\n  loan                loan transactions subcommands\n  multisign           Generate multisig signatures for transactions generated offline\n  proof               proof transactions subcommands\n  purchaseorder       purchaseorder transactions subcommands\n  sign                Sign a transaction generated offline\n  sign-batch          Sign transaction batch files\n  slashing            Slashing transaction subcommands\n  staking             Staking transaction subcommands\n  validate-signatures validate transactions signatures\n  vesting             Vesting transaction subcommands\n  wasm                Wasm transaction subcommands\n  stablecoin          stablecoin transactions subcommands (alias: stablecoins)\n  orders              order management transactions subcommands\n  commerce            commerce transactions subcommands\n  cctp                cross-chain transfer protocol subcommands\n\n  ```\n\n### CosmWasm Smart Contracts\n\nStateset Core supports CosmWasm smart contracts for advanced business logic and automation. The network includes several pre-built contracts:\n\n#### Available Smart Contracts\n\n- **stateset-escrow**: Secure escrow contract with enhanced security, validation, and gas optimizations\n- **stateset-loan**: Decentralized lending protocol with health monitoring and interest rate calculations\n- **stateset-option**: Options trading contract for derivatives and hedging\n- **stateset-proof**: On-chain proof verification and storage\n- **stateset-cw721-base**: NFT standard implementation for tokenized assets\n- **stateset-cw721-fixed-price**: Fixed-price NFT marketplace functionality\n- **stateset-workgroup**: Collaborative workgroup management for DAOs and teams\n\n```\nWasm transaction subcommands\n\nUsage:\n  statesetd tx wasm [flags]\n  statesetd tx wasm [command]\n\nAvailable Commands:\n  clear-contract-admin Clears admin for a contract to prevent further migrations\n  execute              Execute a command on a wasm contract\n  instantiate          Instantiate a wasm contract\n  migrate              Migrate a wasm contract to a new code version\n  set-contract-admin   Set new admin for a contract\n  store                Upload a wasm binary\n```\n\n## Recent Enhancements\n\n### Performance Optimizations\n- **Adaptive Gas Pricing**: Dynamic gas pricing based on network congestion\n- **Batch Processing**: Efficient transaction batching for improved throughput\n- **State Caching**: Advanced caching mechanisms for faster state queries\n- **Sharding Engine**: Horizontal scaling through intelligent sharding\n\n### Security Features\n- **AI-Powered Security**: Machine learning-based threat detection and prevention\n- **Enhanced Validation**: Comprehensive input validation across all modules\n- **Audit Logging**: Complete transaction and state change audit trails\n\n### Cross-Chain Capabilities\n- **CCTP Integration**: Native cross-chain token transfers\n- **IBC Support**: Full Inter-Blockchain Communication protocol support\n- **Bridge Infrastructure**: Secure asset bridging to other networks\n\n## Network Information\n\n- **Chain ID**: stateset-1\n- **Native Token**: STATE\n- **Stablecoin**: ssUSD\n- **Consensus**: Tendermint BFT\n- **Block Time**: ~5 seconds\n- **Smart Contracts**: CosmWasm\n\n## Resources\n\n- **Documentation**: [https://docs.stateset.io](https://docs.stateset.io)\n- **Explorer**: [https://explorer.stateset.io](https://explorer.stateset.io)\n- **GitHub**: [https://github.com/stateset/core](https://github.com/stateset/core)\n- **Discord**: [https://discord.gg/stateset](https://discord.gg/stateset)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstateset%2Fcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstateset%2Fcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstateset%2Fcore/lists"}