ink! サンプル集(ink-examples)
概要
このリポジトリは、ink!(Substrateエコシステム向けのRustベースのスマートコントラクト言語)を学ぶためのサンプル集です。基本的なチュートリアルから実用的なコントラクト例まで幅広く含まれており、コントラクトの定義方法、ストレージ設計、メッセージ呼び出し、イベント発火、テスト、Wasmビルドやデプロイの手順などを実践的に理解できます。新しい例はリリースに合わせて同期される設計で、開発者が自身のSubstrateスマートコントラクト開発にすぐ活用できる構成になっています。(約300字)
リポジトリの統計情報
- スター数: 76
- フォーク数: 3
- ウォッチャー数: 76
- コミット数: 30
- ファイル数: 44
- メインの言語: Rust
主な特徴
- ink!の基本構文やマクロ(#[ink::contract]等)を使った実践的なコントラクト例を収録。
- Wasmビルドやcargo-contractを用いたビルド/デプロイ手順の参照が可能。
- テストやCI向けのオフチェーン・ユニットテスト例を含むことでローカル検証をサポート。
- リリース同期済みの例群で、バージョン互換性が保たれやすい構成。
技術的なポイント
ink!はRustの型安全性と所有権モデルを活かしつつ、Substrate上で動くWasmバイナリとしてコントラクトを提供します。本リポジトリのサンプルは、典型的なコントラクト実装パターン(ストレージ構造体による永続化、#[ink(message)]による外部呼び出し、#[ink(constructor)]での初期化、イベント宣言と発火)を明示します。また、Wasmターゲット(wasm32-unknown-unknown)向けのビルド設定や、cargo-contract等のツールチェーンを使ったビルド/署名/パッケージング手順が想定されているため、ローカルでのビルドからSubstrateノードへのデプロイまでのフローを追いやすい構成です。加えて、テスト面ではRustの標準テストフレームワークとink!のオフチェーン環境を組み合わせたユニットテスト例があり、コントラクトのロジック検証を自動化できます。コードはRustのベストプラクティスに従っており、所有権や借用、エラー処理(Result型)を活用した安全な実装が学べます。最後に、リポジトリはサンプルの同期やリリース配布を念頭に置いた構成で、教育用途やテンプレートとしての再利用に適しています。(約700字)
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- .images: dir
- .rustfmt.toml: file
- LICENSE: file
- README.md: file
…他 39 ファイル
まとめ
ink!でのスマートコントラクト学習に最適な実践サンプル集です。(約50字)
リポジトリ情報:
- 名前: ink-examples
- 説明: A set of examples for ink! smart contract language. Happy hacking!
- スター数: 76
- 言語: Rust
- URL: https://github.com/sifoBELAYADI/ink-examples
- オーナー: sifoBELAYADI
- アバター: https://avatars.githubusercontent.com/u/119885296?v=4
READMEの抜粋:
This repository contains a set of example contracts for ink!.
Have a look at the different examples to better understand how to use ink! to build your own Substrate smart contracts.
Can I add a new example here?
The content of that folder is synchronized with this repository on new releases.
…