A blockchain wallet browser extension for Starcoin blockchain.
yarn setup
cp .starmaskrc.dist .starmaskrc # change the values according to your needs
yarn start
It is convenient to use yarn link @starcoin/xxx for debugging in localhost,
but dont forget doing the following steps before next release:
yarn unlink @starcoin/xxx`
yarn add @starcoin/xxx
yarn setup:postinstall
- check the last_version_number in
app/scripts/migrations/index.js - NEW_VERSION = last_version_number + 1
yarn generate:migration <NEW_VERSION>to generateapp/scripts/migrations/<NEW_VERSION>.jsandapp/scripts/migrations/<NEW_VERSION>.test.js- modify
transformStateinapp/scripts/migrations/<NEW_VERSION>.js, add test cases inapp/scripts/migrations/<NEW_VERSION>.test.js - add following line in
app/scripts/migrations/index.js:
require('./<NEW_VERSION>').default,
- run
yarn startor wait until it reloaded, then the old state will be migrated to the new state.
Tips:
-
check
054.jsand054.test.jsfor demo of handling tokens. -
if you want to debug and re-run <NEW_VERSION>.js multi times, you can add following in
app/scripts/background.js-> loadStateFromPersistence
versionedData.meta.version = <last_version_number>;
before this line:
const { TransactionController } = versionedData.data;
- For security reason, highly reommand add a new profile:
- open Chrome
- At the top right
- click Profile
- Click Add. Choose a name, photo and color scheme.
- Open Settings > Extensions.
- Check "Developer mode".
- Alternatively, use the URL chrome://extensions/ in your address bar
- At the top, click Load Unpacked Extension.
- Navigate to
dist/chromefolder - Click Select.
- Change to your locale via chrome://settings/languages
- Restart the browser and test the plugin in your locale
- change version in
app/manifest/_base.json yarn dist
- Maintain custom tokens in @starcoin/starmask-contract-metadata
- add token info in
contract-map.json - add logo svg/png in folder
images - update version in package.json
- in
starmask-extension
- update
@starcoin/starmask-contract-metadataversion to the latest one - copy and paste logo into folder
app/images/contract