English | ζ₯ζ¬θͺ
The ibet-Prime security token management system for ibet network.
- ibet-Prime is an API service that enables the issuance and management of security tokens on the ibet network.
- It supports tokens and various smart contracts developed by the ibet-SmartContract project.
- As a security token ledger management system, ibet-Prime provides a variety of functions required under Japanese regulations.
- By integrating the ibet-Prime API into your front-end application, you can easily build a security token management service.
- Python3 - version 3.12
- PostgreSQL - version 16
- GoQuorum
- We support the official GoQuorum node of ibet-Network.
- We use hardhat network for local development and unit testing, and we use the latest version.
- ibet-SmartContract: Supports the latest version of contract specifications.
- See details.
- A Python runtime environment must be set up.
- The database must be created on PostgreSQL beforehand.
- By default, the following settings are required:
- User: issuerapi
- Password: issuerapipass
- Database: issuerapidb
- Test database: issuerapidb_test
- By default, the following settings are required:
- The TokenList and E2EMessaging contracts from the ibet-SmartContract project must be deployed in advance.
Create virtual environment with:
$ uv venv
Install python packages with:
$ uv sync --frozen --no-install-project --no-dev --all-extras
$ uv run pre-commit install
$ npm install
The main environment variables are as follows.
Variable Name | Required | Details | Example |
---|---|---|---|
DATABASE_URL | False | Database URL | postgresql+psycopg://issuerapi:issuerapipass@localhost:5432/issuerapidb |
TEST_DATABASE_URL | False | Test database URL | postgresql+psycopg://issuerapi:issuerapipass@localhost:5432/issuerapidb |
DATABASE_SCHEMA | False | Database schema | |
WEB3_HTTP_PROVIDER | False | Web3 provider | http://localhost:8545 |
CHAIN_ID | False | Blockchain network ID | 1010032 |
TOKEN_LIST_CONTRACT_ADDRESS | True | TokenList contract address | 0x0000000000000000000000000000000000000000 |
E2E_MESSAGING_CONTRACT_ADDRESS | True | E2EMessaging contract address | 0x0000000000000000000000000000000000000000 |
BC_EXPLORER_ENABLED | False | Whether to use the BC Explorer | 0(not use) / 1(use) |
TZ | False | Timezone | Asia/Tokyo |
Other environment variables that can be set can be found in config.py
.
See migrations/README.md.
You can start the API server with:
$ ./run.sh server (Press CTRL+C to quit)
Open your browser at http://0.0.0.0:5000.
You will see the JSON response as:
{"server":"ibet-Prime"}
Now go to http://0.0.0.0:5000/docs.
You will see the automatic interactive API documentation provided by Swagger UI:
And now, go to http://0.0.0.0:5000/redoc.
You will see the alternative automatic documentation provided by ReDoc:
This repository is version controlled using the following flow.
ibet-Prime is licensed under the Apache License, Version 2.0.
We are committed to open-sourcing our work to support your use cases. We want to know how you use this library and what problems it helps you to solve. We have two communication channels for you to contact us:
-
A public discussion group where we will also share our preliminary roadmap, updates, events, and more.
-
A private email alias at [email protected] where you can reach out to us directly about your use cases and what more we can do to help and improve the library.
Please refrain from sending any sensitive or confidential information. If you wish to delete a message you've previously sent, please contact us.