This is the code that was used to deploy the current version of the USDtz token on the Tezos blockchain at KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9. The script is based on ConseilJS and was run with Nautilus Cloud infrastructure.
The script is fairly manual, there are 5 steps, each of which entails a re-build and re-run once the prior step has completed. The script consumed roughly 7 XTZ as fees. Initial setup is just the package installation with npm i.
This step will reveal the account on the chain once it has received seed funding, which in the case of the initial deployment was 10 XTZ.
In the run() method uncomment the line below "step 1", then run the following: npm run build && npm start.
Step 2 deploys the token contract which is the vanilla implementation of the FA1.2 token defined in TZIP7 proposal using ConseilJS.
In the run() method disable the code from step 1 uncomment the line below "step 2", then run the following: npm run build && npm start.
Step 3 activates the token contract so that it may execute operations such as balance transfers.
In the run() method disable the code from step 2 uncomment the line below "step 3", then run the following: npm run build && npm start.
Step 4 mints a minimum balance to the final token admin. This step is necessary due to a limitation on Galleon Preview 1.1.1b wallet where the software will not allow UI-based interactions with the token contract unless the loaded account has a balance in that ledger. This step mints "1" which is interpreted as 0.000001 USDtz, effectively 1 micro-dollar.
In the run() method disable the code from step 3 uncomment the line below "step 4", then run the following: npm run build && npm start.
Step 5 transfers ownership of the contract to the destination account. This was the address designated by StableTez. Once this operation completes the initial deployment account loses control of the contract.
In the run() method disable the code from step 4 uncomment the line below "step 5", then run the following: npm run build && npm start.
Currently, the following wallets allow USDtz interactions for balance holders.
Additionally, administration functions are supported by:
View USDtz operations on Arronax.
See USDtz on the various Tezos block explorers.