{"id":13511298,"url":"https://github.com/Setheum-Labs/Setheum","last_synced_at":"2025-03-30T20:32:52.197Z","repository":{"id":36971012,"uuid":"314680292","full_name":"Setheum-Labs/Setheum","owner":"Setheum-Labs","description":"Setheum: The Unified Web3 AI Network. Powering Scalable AI Solutions. Ready for hacking 🚀","archived":false,"fork":false,"pushed_at":"2024-12-14T01:23:37.000Z","size":48025,"stargazers_count":26,"open_issues_count":117,"forks_count":13,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-01T15:05:44.152Z","etag":null,"topics":["ai","blockchain","blockchain-dag","contracts","cryptocurrency","dag","defi","erc20","evm","light-speed","setheum","setheum-network","smart","smart-contracts","solidity","substrate"],"latest_commit_sha":null,"homepage":"https://setheum.xyz","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/Setheum-Labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2020-11-20T22:03:33.000Z","updated_at":"2024-12-06T11:25:30.000Z","dependencies_parsed_at":"2023-11-20T04:32:28.450Z","dependency_job_id":"5d0d9121-6de5-46c1-a5d4-ee51bf6468d8","html_url":"https://github.com/Setheum-Labs/Setheum","commit_stats":{"total_commits":1957,"total_committers":6,"mean_commits":326.1666666666667,"dds":"0.012774655084312747","last_synced_commit":"d150cc7bf1585964a248f1cca901e1a5ef54c2f7"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":"polkadot-developers/substrate-node-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Setheum-Labs%2FSetheum","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Setheum-Labs%2FSetheum/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Setheum-Labs%2FSetheum/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Setheum-Labs%2FSetheum/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Setheum-Labs","download_url":"https://codeload.github.com/Setheum-Labs/Setheum/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246379366,"owners_count":20767694,"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":["ai","blockchain","blockchain-dag","contracts","cryptocurrency","dag","defi","erc20","evm","light-speed","setheum","setheum-network","smart","smart-contracts","solidity","substrate"],"created_at":"2024-08-01T03:00:46.716Z","updated_at":"2025-03-30T20:32:50.816Z","avatar_url":"https://github.com/Setheum-Labs.png","language":"Rust","funding_links":[],"categories":["Blockchains","Network"],"sub_categories":["Library OSes and SDKs"],"readme":"بِسْمِ اللَّهِ الرَّحْمَنِ الرَّحِيم\r\n\r\n# Setheum: The Unified Web3 Base Layer - Globally Solving Web3’s Fragmentation Problems.\r\n\r\n\u003cp align=\"center\"\u003e\r\n  \u003cimg src=\"./media/SetheumLabel.jpg\" style=\"width:1300px\" /\u003e\r\n\u003c/p\u003e\r\n\r\n* Decentralized\r\n* Exceptional\r\n* Secure\r\n* Interoperable\r\n* Reliable\r\n* Ethical\r\n* Scalable\r\n\r\nSetheum's Blockchain Network node Implementation in Rust, ready for hacking :rocket:\r\n\r\n\u003cdiv align=\"center\"\u003e\r\n\r\n[![GitHub tag (latest by date)](https://img.shields.io/github/v/tag/Setheum-Labs/Setheum?color=yellow)](https://github.com/Setheum-Labs/Setheum/tags)\r\n[![License](https://img.shields.io/github/license/Setheum-Labs/Setheum?color=blue)](https://github.com/Setheum-Labs/Setheum/blob/master/LICENSE.md)\r\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](docs/contributor/CONTRIBUTING.md)\r\n\r\n\u003cbr /\u003e\r\n\r\n[![Build](https://github.com/Setheum-Labs/Setheum/actions/workflows/rust.yml/badge.svg)](https://github.com/Setheum-Labs/Setheum/actions/workflows/rust.yml)\r\n[![CodeQL](https://github.com/Setheum-Labs/Setheum/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/Setheum-Labs/Setheum/actions/workflows/github-code-scanning/codeql)\r\n\r\n\u003cbr /\u003e\r\n\r\n[![Website](https://img.shields.io/badge/Website-gray?logo=web)](https://setheum.xyz)\r\n[![Twitter URL](https://img.shields.io/twitter/url?style=social\u0026url=https%3A%2F%2Ftwitter.com%2FSetheum)](https://twitter.com/Setheum)\r\n[![Telegram](https://img.shields.io/badge/Telegram-gray?logo=telegram)](https://t.me/SetheumNetwork)\r\n[![Medium](https://img.shields.io/badge/Medium-gray?logo=medium)](https://medium.com/setheum-labs)\r\n[![Lines of Code](https://img.shields.io/badge/LinesOfCode-gray?logo=LinesOfCode)](https://cloc.info/github.com/Setheum-Labs/Setheum)\r\n\u003c/div\u003e\r\n\r\n\u003e NOTE: SETHEUM means `Salam Eth`, `Super Eth`, `The house of gifts` and `gifted`. Originally from the name `Seth/Sheeth` mixed with `Ethereum`, it also stands for `Secure, Evergreen, Truthful, Heterogeneous, Economically Unbiased Market`.\r\n\r\n\u003c!-- TOC --\u003e\r\n- [Setheum - Powering The New Internet](#setheum---powering-the-new-internet)\r\n  - [1.0. Introduction](#10-introduction)\r\n    - [1.1. Setheum Chain](#11-setheum-chain)\r\n    - [1.2. Ethical DeFi](#12-ethical-defi)\r\n      - [1.2.1. Ethical DeFi Projects](#121-ethical-defi-projects)\r\n  - [2.0. Getting Started](#20-getting-started)\r\n    - [2.1. Build](#21-build)\r\n    - [2.2. Run](#22-run)\r\n      - [2.2.1. Start a development node](#221-start-a-development-node)\r\n      - [2.2.2. Run a persistent single-node chain](#222-run-a-persistent-single-node-chain)\r\n  - [3.0. Development](#30-development)\r\n  - [4.0. Nodes](#40-nodes)\r\n    - [4.1. Embedded docs](#41-embedded-docs)\r\n    - [4.2. Release builds](#42-release-builds)\r\n    - [4.3. On-Chain upgrade builds](#43-on-chain-upgrade-builds)\r\n  - [5.0. EVM - Generate Tokens \\\u0026 Predeploy Contracts](#50-evm---generate-tokens--predeploy-contracts)\r\n  - [6.0. Benchmark](#60-benchmark)\r\n    - [6.1. Run Benchmark Tests](#61-run-benchmark-tests)\r\n    - [6.2. Generate Runtime Module Weights Locally](#62-generate-runtime-module-weights-locally)\r\n    - [6.3. Generate Module weights](#63-generate-module-weights)\r\n    - [6.4. Bench Bot](#64-bench-bot)\r\n      - [6.4.1. Generate Module Weights](#641-generate-module-weights)\r\n      - [6.4.2. Generate Runtime Weights](#642-generate-runtime-weights)\r\n  - [7.0. Fork Setheum Chain](#70-fork-setheum-chain)\r\n  - [8.0. Contributing \\\u0026 Code of Conduct](#80-contributing--code-of-conduct)\r\n    - [8.1. ToDo List](#81-todo-list)\r\n  - [9.0. License](#90-license)\r\n\u003c!-- /TOC --\u003e\r\n\r\n## 1.0. Introduction\r\n\r\n### 1.1. Setheum Chain\r\n\r\nFounded November 2019,Setheum achieves a high level of equilibrium in the trilemma by leveraging a Directed Acyclic Graph(DAG) to build the blockchain consensus - making it a Blockchain via DAG, achieve instant finality, high throughput and very fast blocktime while preserving network security and having a fairly decentralised network,\r\n\r\nSetheum is a light-speed decentralised blockchain network with EVM and WASM smart contracts, built from a mixture of what we have seen and considered to be some of the best solutions in the industry, improving on scalability, security, user experience, ethics,decentralisation and democratisation. Setheum intends to be the most complete blockchain network in the world. The AlephBFT Consensus Engine powers the Setheum Chain to have near instant finality, high throughput and high scalability and high security.\r\n\r\n### 1.2. Ethical DeFi\r\n\r\nEthical DeFi Suite is the DeFi powerhouse of the Setheum Network, providing all kinds of top notch DeFi protocols including an AMM DEX (inspired by Uniswap v3), Ethical Zero-interest Halal Stablecoins that gives us the properties of both Fiat and Crypto with SlickUSD (USSD) and the Setter (SETR) using an Ethical Collateralized Debt Position (ECDP) mechanism that is over-Collateralized and multi-Collateralised and stable without compromising decentralisation or economic stability, offering stable cryptocurrencies that have scalable value and reliability, setheum provides just that, backed by crypto assets on an efficient zero-interest debt-based system.\r\n\r\n#### 1.2.1. Ethical DeFi Projects:\r\n\r\n- `Edfis`: Ethical DeFi Suite\r\n  - `Edfis Pay`: Decentralised Payment Protocol\r\n  - `Edfis Swap Exchange`: AMM (Automated Market Maker) DEX Protocol inspired by Uniswap v3 design\r\n  - `Edfis Launchpad`: Launchpad Crowdsales protocol for bootstrapping pools on Edfis Exchange\r\n  - `Edfis Launchpool`: Launchpool protocol for bootstrapping pools on Edfis Exchange\r\n- `Setter`: Unpegged ECDP Stablecoin\r\n- `SlickUSD`: USD Pegged ECDP Stablecoin\r\n\r\n## 2.0. Getting Started\r\n\r\nThis project contains some configuration files to help get started :hammer_and_wrench:\r\n\r\n### 2.1. Build\r\n\r\nClone this repository:\r\n\r\n```bash\r\ngit clone --recursive https://github.com/Setheum-Labs/Setheum\r\n```\r\n\r\nInstall Rust:\r\n\r\n```bash\r\ncurl https://sh.rustup.rs -sSf | sh\r\n```\r\n\r\n\u003e If, after installation, running `rustc --version` in the console fails, refer to [it](https://www.rust-lang.org/tools/install) to repair.\r\n\r\nYou can install developer tools on Ubuntu with:\r\n\r\n```bash\r\nsudo apt-get install -y git make clang curl pkg-config libssl-dev llvm libudev-dev protobuf-compiler build-essential\r\n```\r\n\r\nYou may need additional dependencies, checkout [substrate.io](https://docs.substrate.io/v3/getting-started/installation) for more info.\r\n\r\nMake sure you have `submodule.recurse` set to true to ease submodule use.\r\n\r\n```bash\r\ngit config --global submodule.recurse true\r\n```\r\n\r\nYou can install required tools and git hooks:\r\n\r\n```bash\r\nmake init\r\n```\r\n\r\n\u003c!-- \r\nBuild Qingdao Testnet native code:\r\n\r\n```bash\r\nmake build-full\r\n```\r\n --\u003e\r\n\r\n### 2.2. Run\r\n\r\n#### 2.2.1. Start a development node\r\n\r\nThe `make run` command will launch a temporary node and its state will be discarded after you terminate the process.\r\n\r\n```bash\r\nmake run\r\n```\r\n\r\n#### 2.2.2. Run a persistent single-node chain\r\n\r\nUse the following command to build the node without launching it:\r\n\r\n```bash\r\nmake build\r\n```\r\n\r\nThis command will start the single-node development chain with persistent state:\r\n\r\n```bash\r\n./target/release/setheum-node --dev\r\n```\r\n\r\nPurge the development chain's state:\r\n\r\n```bash\r\n./target/release/setheum-node purge-chain --dev\r\n```\r\n\r\nStart the development chain with detailed logging:\r\n\r\n```bash\r\nRUST_LOG=debug RUST_BACKTRACE=1 ./target/release/setheum-node -lruntime=debug --dev\r\n```\r\n\r\n## 3.0. Development\r\n\r\nRun type check:\r\n\r\n```bash\r\nmake check-all\r\n```\r\n\r\nRun tests:\r\n\r\n```bash\r\nmake test\r\n```\r\n\r\nRun in debugger:\r\n\r\n```bash\r\nmake debug\r\n```\r\n\r\nPurge old chain data:\r\n\r\n```bash\r\nmake purge\r\n```\r\n\r\nPurge old chain data and run:\r\n\r\n```bash\r\nmake restart\r\n```\r\n\r\nUpdate Cargo:\r\n\r\n```bash\r\nmake update\r\n```\r\n\r\nUpdate ORML:\r\n\r\n```bash\r\ncd orml \u0026\u0026 git checkout master \u0026\u0026 git pull\r\ngit add .\r\ncargo update check-all\r\n```\r\n\r\n__Note:__ All build command from Makefile are designed for local development purposes and hence have `SKIP_WASM_BUILD` enabled to speed up build time and use `--execution native` to only run using native execution mode.\r\n\r\n## 4.0. Nodes\r\n\r\nFor Docs on running nodes, check [./docs/nodes.md](./docs/nodes.md)\r\n\r\n### 4.1. Embedded docs\r\n\r\nOnce the project has been built, the following command can be used to explore all parameters and subcommands:\r\n\r\n```bash\r\n./target/release/setheum-node -h\r\n```\r\n\r\n### 4.2. Release builds\r\n\r\nTo list all available release builds run:\r\n\r\n```bash\r\ngit tag\r\n```\r\n\r\nTo create a corresponding production build, first checkout the tag:\r\n\r\n```bash\r\ngit checkout testnet-1\r\n```\r\n\r\nThen run this command to install appropriate compiler version and produce a binary.\r\n\r\n```bash\r\nmake release\r\n```\r\n\r\n### 4.3. On-Chain upgrade builds\r\n\r\nBuild the wasm runtime with:\r\n\r\n```bash\r\nmake wasm\r\n```\r\n\r\n## 5.0. EVM - Generate Tokens \u0026 Predeploy Contracts\r\n\r\n```bash\r\nmake generate-tokens\r\n```\r\n\r\n__Note:__ All build commands with `SKIP_WASM_BUILD` are designed for local development purposes and hence have the `SKIP_WASM_BUILD` enabled to speed up build time and use `--execution native` to only run use native execution mode.\r\n\r\n## 6.0. Benchmark\r\n\r\n### 6.1. Run Benchmark Tests\r\n\r\nRun runtime benchmark tests:\r\n\r\n```bash\r\nmake bench\r\n```\r\n\r\nRun module benchmark tests:\r\n\r\n```bash\r\ncargo test -p module-poc --all-features\r\n```\r\n\r\n### 6.2. Generate Runtime Module Weights Locally\r\n\r\n```bash\r\nmake benchmark\r\n```\r\n\r\n### 6.3. Generate Module weights\r\n\r\nRun the module benchmarks and generate the weights file:\r\n\r\n```bash\r\n./target/release/setheum-node benchmark \\\r\n    --chain=dev \\\r\n    --steps=50 \\\r\n    --repeat=20 \\\r\n    --pallet=module_currencies \\\r\n    --extrinsic='*'  \\\r\n    --execution=wasm \\\r\n    --wasm-execution=compiled \\\r\n    --heap-pages=4096 \\\r\n    --output=./blockchain/modules/currencies/src/weights.rs\r\n```\r\n\r\n### 6.4. Bench Bot\r\n\r\nBench bot can take care of syncing branch with `master` and generating WeightInfos for module or runtime.\r\n\r\n#### 6.4.1. Generate Module Weights\r\n\r\nComment on a PR `/bench module \u003cmodule_name\u003e` i.e.: `/bench module module_prices`\r\n\r\nBench bot will do the benchmarking, generate `weights.rs` file push and changes into your branch.\r\n\r\n#### 6.4.2. Generate Runtime Weights\r\n\r\nComment on a PR `/bench runtime module \u003cmodule_name\u003e` i.e.: `/bench runtime module module_prices`\r\n\r\nBench bot will do the benchmarking, generate `weights.rs` file and push changes into your branch.\r\n\r\n## 7.0. Fork Setheum Chain\r\n\r\nYou can create a fork of a live chain (testnet / mainnet) for development purposes.\r\n\r\n1) Build binary and sync with target chain on localhost defaults. You will need to use unsafe rpc.\r\n2) Execute the `Make` command ensuring to specify chain name (testnet / mainnet).\r\n\r\n```bash\r\nmake chain=testnet fork\r\n```\r\n\r\n3) Now run a forked chain:\r\n\r\n```bash\r\ncd fork/data\r\n./binary --chain fork.json --alice\r\n```\r\n\r\n## 8.0. Contributing \u0026 Code of Conduct\r\n\r\nIf you would like to contribute, please fork the repository, introduce your changes and submit a pull request. All pull requests are warmly welcome.\r\n\r\nIn every interaction and contribution, this\r\nproject adheres to the [Contributor Covenant Code of Conduct](./CODE_OF_CONDUCT.md).\r\n\r\n### 8.1. ToDo List\r\n\r\nNote\u003e Before adding/removing a TODO, please carefully read the [TODO.md file](./docs/TODO.md)\r\n\r\nWhenever you write a TODO in any file, please add a reference to it [here](./docs/TODO.md).\r\nWhenever you remove a TODO in any file, please remove its reference from [here](./docs/TODO.md).\r\n\r\n## 9.0. License\r\n\r\nThe code in this repository is licensed under the [GNU GPL Version 3 License](./LICENSE.md)\r\n\r\nUnless you explicitly state otherwise, any contribution that you submit to this repo shall be licensed as above (as defined in the [GNU GPL-3 Version 3.0 or later WITH Classpath-exception-2.0](./LICENSE.md)), without any additional terms or conditions.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSetheum-Labs%2FSetheum","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSetheum-Labs%2FSetheum","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSetheum-Labs%2FSetheum/lists"}