{"id":27320355,"url":"https://github.com/polymeshassociation/polymesh","last_synced_at":"2026-02-26T13:04:50.691Z","repository":{"id":37094760,"uuid":"178884117","full_name":"PolymeshAssociation/Polymesh","owner":"PolymeshAssociation","description":"Node for Polymesh Blockchain","archived":false,"fork":false,"pushed_at":"2025-05-06T17:50:25.000Z","size":61493,"stargazers_count":167,"open_issues_count":4,"forks_count":49,"subscribers_count":30,"default_branch":"develop","last_synced_at":"2025-05-15T12:03:39.784Z","etag":null,"topics":["blockchain","polymesh","rust","security-tokens","substrate"],"latest_commit_sha":null,"homepage":"https://polymesh.network/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PolymeshAssociation.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":"audit/Atredis Partners - Polymesh Feature Review_v1.1.pdf","citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-04-01T14:44:22.000Z","updated_at":"2025-05-05T10:13:12.000Z","dependencies_parsed_at":"2023-10-25T13:56:10.760Z","dependency_job_id":"10424c6b-9bf6-40b5-b6c2-84d9191153a6","html_url":"https://github.com/PolymeshAssociation/Polymesh","commit_stats":{"total_commits":1733,"total_committers":32,"mean_commits":54.15625,"dds":0.728793998845932,"last_synced_commit":"8a502aea8f8e47953c222a2a6da575282f683ee4"},"previous_names":["polymathnetwork/polymesh"],"tags_count":65,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymeshAssociation%2FPolymesh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymeshAssociation%2FPolymesh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymeshAssociation%2FPolymesh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymeshAssociation%2FPolymesh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PolymeshAssociation","download_url":"https://codeload.github.com/PolymeshAssociation/Polymesh/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254337612,"owners_count":22054253,"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","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":["blockchain","polymesh","rust","security-tokens","substrate"],"created_at":"2025-04-12T09:47:09.595Z","updated_at":"2026-02-26T13:04:50.649Z","avatar_url":"https://github.com/PolymeshAssociation.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Discord](https://img.shields.io/badge/Discord-Join_our_server-blue.svg?style=social\u0026logo=discord)](https://discord.com/invite/ud2deWAnyt) \n![Twitter Follow](https://img.shields.io/twitter/follow/PolymeshNetwork?style=social)\n\n\u003cimg src=\"Polymesh-logo.svg\" width=\"70%\" alt=\"Polymesh\"/\u003e\n\n# Polymesh Blockchain\n\nPolymesh is a blockchain for regulated securities and open finance.\n\n# Whitepaper\n\n\u003chttps://info.polymesh.network/hubfs/Files/Polymesh-Whitepaper.pdf\u003e\n\n# Audit\n\nSee the `audit` folder for details of audits undertaken on the Polymesh code base.\n\nIndependent audits were completed by:  \nhttps://www.srlabs.de/  \nhttps://www.atredis.com/\n\n# Networks\n\nWe run two public networks, the mainnet and the testnet.\n\nGenerally these two networks will be at the same version of Polymesh, although they may differ briefly during an upgrade cycle.\n\nWe provide linux binaries for each release.\n\nThe latest release for Polymesh can be found at:  \n\u003chttps://github.com/PolymeshAssociation/Polymesh/releases\u003e\n\nGenerally you should be able to run the latest release for both networks, although the on-chain version of the network might differ during upgrade cycles.\n\nBelow are simple instructions for running a non-operating node (i.e. a node that does not produce blocks or vote on the correctness of other blocks).\n\nFor more details on monitoring infrastructure for nodes and running an operator node, see the https://github.com/PolymeshAssociation/polymesh-tools repository.\n\n## Polymesh Testnet\n\nThe Testnet does not offer incentives to users to participate and test with it. It has a simple onboarding process (no-KYC required).\nThe testnet also includes the `testUtils` pallet that allows easier onboarding for testing, and in addition each new account will receive 100,000 POLYX for testing purposes.\n\nTo run a node which connects to the Testnet, you can start your node with:\n\n```bash\n./target/release/polymesh --chain testnet\n```\n\n## Polymesh Mainnet\n\nThe public mainnet is the official Polymesh blockchain. Onboarding requires users to go through a simple KYC process (called Customer Due Diligence or CDD) in order to access the network.\n\nTo run a node which connects to the Mainnet, you can start your node with:\n\n```bash\n./target/release/polymesh --chain mainnet\n```\n\n# Operators (aka Validators)\n\nA guide to running an operator node can be found at:\n\n\u003chttps://github.com/PolymeshAssociation/polymesh-tools/tree/main/docs/operator\u003e\n\n# Documentation\n\nFurther details on Polymesh concepts and networks can be found at:\n\n\u003chttps://developers.polymesh.network/\u003e\n\nCode documentation can be found at:\n\n\u003chttps://docs.polymesh.live/\u003e\n\n# Build\n\nTo prepare your development environment with the required compiler and tools refer to https://docs.substrate.io/main-docs/install/ for instructions applicable to your operating system.\n\nBuild Wasm and native code:\n\n```bash\ncargo build --release\n```\n\nRun unit tests:\n\n```bash\n./scripts/test.sh\n```\n\n# Branches\n\n- The `mainnet` branch tracks code deployed to the Polymesh Public Mainnet.\n- The `testnet` branch tracks code deployed to the Polymesh Public Testnet.\n- The `staging` branch tracks mainnet except during a release cycle where it is upgraded ahead of mainnet.\n- The `tooling` branch tracks the next candidate release for mainnet.\n- The `develop` branch is the working branch with the latest code changes.\n\n# Development\n\n## Single node development chain\n\nYou can start a development chain with:\n\n```bash\n./target/release/polymesh --dev\n```\n\nDetailed logs may be shown by running the node with the following environment variables set:\n`RUST_LOG=debug RUST_BACKTRACE=1 ./target/release/polymesh --dev`.\n\n[Web Interface]: https://mainnet-app.polymesh.network/#/explorer\n\nTo access the Polymesh Chain using the [Web Interface] do the following:\n\n1. Click on the Polymesh logo in the top-left corner of the UI. You can then select \"Local Node\" under the Development section.\n\n   \u003e Note: if the `polymesh` node above is on a different machine than your browser (e.g., a server on your local network), you'll need to use a *\"custom endpoint\"*, e.g., `ws://192.168.0.100:9944/`.\n   \u003e The [Web Interface] uses `https`, but your `polymesh` instance does not, so you'll need `ws://` as opposed to `wss://`. You'll also need to use `http://httpapp.polymesh.live/` instead of [Web Interface]. Otherwise, you'll have problems with mixed-content blocking (https vs. http).\n   \u003e Finally, add `--rpc-external --ws-external --rpc-cors all` to the `polymesh` invocation above.\n\n2. If you have [custom types definitions](https://github.com/PolymeshAssociation/Polymesh/blob/develop/polymesh_schema.json) that differ from the Polymesh Testnet, you can update these in [Settings](https://app.polymesh.live/#/settings) tab under the `Developer` section.\n\n3. Reload the page.\n\n## Multi-node local testnet\n\nIf you want to see the multi-node consensus algorithm in action locally, then you can create a local testnet with two validator nodes for Alice and Bob, who are the initial authorities of the genesis chain that have been endowed with testnet units.\n\n```bash\ncd scripts/cli\nnpm install\n./run.sh\n```\n\nThis uses pm2 to run a local three node network for demonstrate simple consensus.\n\nTo stop the chain you can use:\n\n```bash\n./stop.sh\n```\n\nand to display log files you can use:\n\n```bash\n./log.sh\n```\n\n# Unit Tests\n\nUnit tests are packaged with the Rust code. To run these, you can execute:\n\n```bash\ncargo test --package polymesh-runtime-tests\ncargo test --package pallet-staking\ncargo test --package pallet-balances\ncargo test --package polymesh-primitives\ncargo test --package pallet-pips-rpc\ncargo test --package pallet-transaction-payment\n```\n\n# Initialise\n\nYou can seed the network with some identities, claims, signing keys and assets by running the functional test.\n\n```bash\ncd scripts/cli\nnode run test\n```\n\nSee [README](https://github.com/PolymeshAssociation/Polymesh/tree/develop/scripts/cli) for details.\n\n# Benchmarks\n\nPolymesh runtime benchmarks can be run with a command that specifies the pallet and the name of the\nextrinsic to be benchmarked, for example:\n\n```bash\ncargo run --release --features runtime-benchmarks -- \\\n    benchmark pallet -p=\"*\" -e=\"*\"\n```\n\nNote that the CLI binary should be built in release mode and that the feature flag\n`runtime-benchmarks` should be set to enable the CLI option `benchmark`.\n\n# Debug\n\n## Environment\n\nInstall GDB for your distribution.\n\n## Build\n\nBinary should be built in *debug mode*, using `cargo build` without `--release` parameter:\n\n```bash\ncargo build\n```\n\nTest cases are built in *debug mode* by default.\n\n## Using GDB\n\nUsing `rust-gdb` you will get pretty printed values for more types than directly with `gdb`.\n\nThe following example, starts `gdb`, sets a breakpoint, and starts our compiled `polymesh`:\n\n```bash\n$\u003e rust-gdb ./target/debug/polymesh\nGNU gdb (Ubuntu 8.2.91.20190405-0ubuntu3) 8.2.91.20190405-git\nCopyright (C) 2019 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later \u003chttp://gnu.org/licenses/gpl.html\u003e\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\nType \"show copying\" and \"show warranty\" for details.\nThis GDB was configured as \"x86_64-linux-gnu\".\nType \"show configuration\" for configuration details.\nFor bug reporting instructions, please see:\n\u003chttp://www.gnu.org/software/gdb/bugs/\u003e.\nFind the GDB manual and other documentation resources online at:\n    \u003chttp://www.gnu.org/software/gdb/documentation/\u003e.\n\nFor help, type \"help\".\nType \"apropos word\" to search for commands related to \"word\"...\nReading symbols from ./target/debug/polymesh...\n\n(gdb) b balances/src/lib.rs : 390\nBreakpoint 1 at 0x2b792d0: balances/src/lib.rs:390. (2 locations)\n\n(gdb) run --dev\nStarting program: ./target/debug/polymesh --dev\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library \"/lib/x86_64-linux-gnu/libthread_db.so.1\".\n2020-02-26 12:48:37 Running in --dev mode, RPC CORS has been disabled.\n2020-02-26 12:48:37 Polymesh Node\n...\n```\n\n# License\n\n[LICENSE](https://github.com/PolymeshAssociation/Polymesh/blob/master/LICENSE)\n\n# Substrate Framework\n\nPolymesh is built using the [Substrate Framework](https://www.parity.io/what-is-substrate/).\n\n# Polymesh\n\n[Polymesh Website](https://polymesh.network)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolymeshassociation%2Fpolymesh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpolymeshassociation%2Fpolymesh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolymeshassociation%2Fpolymesh/lists"}