lesson-1_プロジェクトの概要を掴もう
✨ NEAR Election dApp 開発プロジェクトへようこそ!
このプロジェクトではNEARというチェーン上で投票アプリの作成を行なっていきます!
プロジェクトを進めるには以下の技術が必要です。
🧐 NEAR とは何か?
NEARはブロックチェーンの1つで、Ethereumに取って替わるともいわれています。
特徴としては、独自のシャーディング技術
によって他のチェーンと比べて低い手数料での取引が可能だったり、トランザクションの完了が素早いという特徴があります。
このシャーディング技術は複数のトランザクションを1つのブロックチェーンで処理するのではなく、「シャード」と呼ばれる単位の複数のチェーンで処理を分散化することで並行処理ができるようにする技術のことです。
また、環境への配慮もされており従来の通貨に比べて約1/1300の電気しか使用しないそうです。
開発者に対する配慮もされています。Rust
やAssemblyScript
(JavaScriptっぽい言語)など比較的広く利用されているプログラミング言語を利用して開発が行えるようになっています。
加えて、NEARが公式的に「grant」という報酬システム
を用意してくれています。NEAR上での面白いアイデアやプロダクトを提出して承認されるとNEARという暗号通貨で報酬をもらえるというものです。詳しくはこちらをご覧ください。
このようにユーザーにも開発者にとっても素晴らしい環境を用意してくれているNEARの世界へ飛び込んでみましょう!
🛠 何を開発するのか?
今回開発するものは、ブロックチェーンの大きな特徴の1つである対改ざん性を生かした投票dApp
です。このdAppでは主に以下の機能を実装します
- 投票券の付与
- 候補者の追加
- 投票
- 投票結果の開示
完成した投票dApp
は以下のような見た目になります 💪
NEARのwalletと接続することでログインする画面になります!
Sign in
ボタンを押すことでNEARが用意しているwallet接続画面に移動することでwallet接続してホーム画面に移動します。
追加された候補者情報と、得票数が表示されます。
投票は一人1回できるようになっていてそれぞれの投票者の下にあるvote
ボタンを押すと確認画面が出てきて、指定の候補者に投票することができます。具体的にいうと、NEARが用意しているトランザクション画面に移動してトランザクションを承認することになります。
また、コントラクトをdeployしたウォレットでログインした場合に限り下の画像のようなClose Election