All Projects → patractlabs → metis

patractlabs / metis

Licence: Apache-2.0 License
A library for secure ink! Wasm smart contract development.

Programming Languages

rust
11053 projects
typescript
32286 projects

Projects that are alternatives of or similar to metis

jupiter
Wasm smart contract networks powered by Substrate FRAME Contracts pallet in Polkadot ecosystem.
Stars: ✭ 49 (+68.97%)
Mutual labels:  ink, substrate
pallet-contracts-waterfall
Collection of simple Substrate smart contract examples written in Rust, AssemblyScript, Solang and the smart contract language ink! to test substrates pallet-contracts module
Stars: ✭ 28 (-3.45%)
Mutual labels:  ink, substrate
Astar
The dApp hub for blockchains of the future
Stars: ✭ 533 (+1737.93%)
Mutual labels:  substrate
inkling
Limited Rust implementation of the Ink markup/scripting language for game narratives
Stars: ✭ 22 (-24.14%)
Mutual labels:  ink
inkbyexample
✒ A hands-on introduction to Ink using annotated example programs.
Stars: ✭ 18 (-37.93%)
Mutual labels:  ink
cess
An implementation of the distributed storage network supported by CESS LAB.
Stars: ✭ 117 (+303.45%)
Mutual labels:  substrate
http4s-graal
An experiment running http4s as native image with Graal (+ Substrate)
Stars: ✭ 27 (-6.9%)
Mutual labels:  substrate
bittensor
Internet-scale Neural Networks
Stars: ✭ 97 (+234.48%)
Mutual labels:  substrate
MeeInk
Material Design click effect
Stars: ✭ 33 (+13.79%)
Mutual labels:  ink
subsocial-offchain
Off-chain storage for Subsocial blockchain. This app builds user feeds and notifications by subscribing to Substrate events.
Stars: ✭ 24 (-17.24%)
Mutual labels:  substrate
Zentanetwork
Zentanetwork is a forkless Proof of Stake consensus for communication and data storage.
Stars: ✭ 15 (-48.28%)
Mutual labels:  substrate
trustbase
Smart Contract parachain interoperate with Polkadot and Ethereum
Stars: ✭ 22 (-24.14%)
Mutual labels:  substrate
substrate-docs
Substrate Developer Hub. Substrate is powered by best in class cryptographic research and comes with peer to peer networking, consensus mechanisms, and much more.
Stars: ✭ 63 (+117.24%)
Mutual labels:  substrate
polkascan-pre-harvester
Polkascan PRE Harvester
Stars: ✭ 23 (-20.69%)
Mutual labels:  substrate
react-native-ink
React Native for CLIs
Stars: ✭ 28 (-3.45%)
Mutual labels:  ink
tools
Various cli tools for Polkadot and Substrate chains, including basic node monitoring, making API queries via a cli app and other command-line tools
Stars: ✭ 173 (+496.55%)
Mutual labels:  substrate
crunch
Crunch is a command-line interface (CLI) and Matrix Bot to claim staking rewards every Era for Substrate-based chains
Stars: ✭ 34 (+17.24%)
Mutual labels:  substrate
datdot-node-rust
datdot blockchain node in rust
Stars: ✭ 43 (+48.28%)
Mutual labels:  substrate
ts
Misc. TypeScript definitions that are not yet available on DefinitelyTyped but required by other projects in this repo. Should be merged with upstream projects or the DT project.
Stars: ✭ 13 (-55.17%)
Mutual labels:  substrate
interbtc
interBTC: Trustless Bitcoin on Polkadot | kBTC: Trustless Bitcoin on Kusama
Stars: ✭ 136 (+368.97%)
Mutual labels:  substrate

Metis

Metis is inspired by the OpenZeppelin-Contracts from the Ethereum ecosystem.

Metis will be the Wasm contract standard library developed by Patract Labs. Patract Labs will work with community forces to formulate various Wasm contract standards, develop corresponding implementations of ink! and Ask! versions, and conduct audits by professional institutions.

At now, Metis just provide support for ink! contract. It will develop the corresponding version of the ink! implementation for each newly generated ink! contract standard. And Metis will be audited at the same time to ensure the security of the contract. Metis will also be able to be easily searched and downloaded just like Solidity development, and integrated into the developer's project as a Redspot plug-in.

To use the Metis, can see the documentation.

Proposal(M1): https://polkadot.polkassembly.io/post/469

Use

Since ink! is under development, developers need to use metis according to their own situation:

  1. developers use ink! dependencies from crates.io:

    e.g.:

    [dependencies]
    ink_lang = { version = "3.0.0-rc5", default-features = false }

    For this situation, Metis provides different branch/tag to support different ink! version. Like here ink! version is 3.0.0-rc5, then Metis provides branch ink/3.0.0-rc5 to allow developer to use the same ink! source. In this branch, Metis' dependencies for ink! will point to ink_lang = { version = "3.0.0-rc5", default-features = false } as well:

    [dependencies]
    ink_lang = { version = "3.0.0-rc5", default-features = false }
    metis_lang = { git = "https://github.com/patractlabs/metis", branch = "ink/3.0.0-rc5", default-features = false }

    For now, the relationship between Metis branch/tag and ink! release version are following:

    • ink!: 3.0.0-rc5 | Metis branch: ink/3.0.0-rc5
  2. developers use ink! dependencies from github repo:

    e.g.:

    [dependencies]
    ink_lang = { version = "3.0.0-rc5", git = "https://github.com/paritytech/ink", default-features = false }

    For this situation, developer should use Metis master branch directly. In master, Metis' dependencies for ink! will be github repo as well.

    [dependencies]
    ink_lang = { version = "3.0.0-rc5", default-features = false }
    metis_lang = { git = "https://github.com/patractlabs/metis", default-features = false }
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].