English | 日本語
- ibet-Wallet-API は ibet-Network 上にウォレットシステムを構築するためのユーティリティ機能群を提供するRPCサービスです。
- ibet-Wallet-API は ibet-SmartContract プロジェクト で開発されているトークンコントラクトや DEX コントラクトを利用して動作します。
- python3
- バージョン 3.12
- RDB
- PostgreSQL - バージョン 16
- MySQL - バージョン 8.0
- GoQuorum
- ibet-Network の公式の GoQuorum をサポートしています。
- 最新の hardhat network をローカル開発およびユニットテストで利用しています。
- ibet-SmartContract: バージョン 24.9
- 詳細を参照ください。
- Python実行環境を整備してください。
- PostgreSQLを設定し、以下のDBを事前に作成してください。
- デフォルトでは以下の設定が必要になります。
- ユーザー: ethuser
- パスワード: ethpass
- DB: ethcache
- テスト用 DB: ethcache_test
- デフォルトでは以下の設定が必要になります。
- 以下のコントラクトを事前にデプロイする必要があります。
- TokenList
- PaymentGateway (任意)
- IbetExchange (任意)
- IbetEscrow (任意)
- IbetSecurityTokenEscrow (任意)
- E2EMessaging (任意)
以下のコマンドで Python の仮想環境を作成します。
$ uv venv
以下のコマンドで Python パッケージをインストールします。
$ uv sync --frozen --no-install-project --no-dev --extra ibet-explorer
設定可能な環境変数については以下のドキュメントを確認してください。
DB Migration Guide を確認してください。
API サーバーの起動(停止)
$ ./bin/run_server.sh start(stop)
ブラウザで、http://0.0.0.0:5000 を開くと、以下のJSONのレスポンスを確認できるはずです。
{"server":"ibet-Wallet-API"}
また、バッチプロセスは以下のように起動します。
$ ./bin/run_indexer.sh
$ ./bin/run_processor.sh
サーバーを起動した状態で、http://0.0.0.0:5000/docs を開いてください。
Swagger UI 形式のドキュメントを参照することができるはずです。
同様に、http://0.0.0.0:5000/redoc を開いてください。
ReDoc 形式のドキュメントを参照することができるはずです。
テストで利用する Python の仮想環境を作成します。
$ uv venv
テストで利用するパッケージをインストールします。
$ uv sync --frozen --no-install-project
以下のようにテストを実行します。
$ export UNIT_TEST_MODE=1
$ uv run pytest tests/
このリポジトリは以下の図で示されるフローでバージョン管理が行われています。
ibet-Wallet-API は Apache License, Version 2.0 でライセンスされています。
メジャーバージョンはリリースから1年間サポートを行います。 例えば、v22.1 は v23.1 がリリースされるまでサポートされます。 サポート期間中は、致命的な問題(セキュリティ問題を含む)に対して、マイナーバージョンを発行して修正を行います(例:v22.1.1, v22.1.2 など)。
私たちは、皆様のユースケースをサポートするために、オープンソースに取り組んでいます。 私たちは、あなたがこのライブラリをどのように使用し、どのような問題の解決に役立っているかを知りたいと思います。 私たちは、2つのコミュニケーション用の手段を用意しています。
-
public discussion group では、ロードマップ、アップデート、イベント等を共有します。
-
[email protected] のEメール宛に連絡をいただければ、直接私たちに連絡することができます。
機密事項の送信はご遠慮ください。過去に送信したメッセージの削除を希望される場合は、ご連絡ください。