@gatewallet/wallet-adapter-plugin
v0.1.0
Published
Gate wallet adapter plugin to use with Aptos Wallet Adapter
Downloads
6
Readme
WARNING - This template is outdated
Follow the instructions here to implement an AIP-62 wallet adapter plugin.
Implementing an AIP-62 standard wallet adapter plugin is backwards compatible with this legacy version. Implementing the above AIP-62 standard makes it simple for dapps to include your Wallet as an option by updating the version of the wallet-adapter package.
This legacy plugin template required dapps to manually look for new wallets to include from a README which was easier to miss.
Legacy Instructions
Aptos wallet plugin template for wallet builders to interact with the Aptos Wallet Adapter
This repo provides wallet builders a pre-made class with all required wallet functionality following the wallet standard for easy and fast development to interact with the Aptos Wallet Adapter
Usage
fork
this reporun
npm install
oryarn install
Open
src/index.ts
Change all
AptosWindow
appereances to<Your-Wallet-Name>Window
Change
AptosWalletName
to be<Your-Wallet-Name>WalletName
Change
url
to match your website urlChange
icon
to your wallet icon (pay attention to the required format)Change
window.aptos
to bewindow.<your-wallet-name>
NOTE: Ensure the
name
prop is the same as thewindow.<name>
. The adapter will look for the matching name when detecting a wallet. For example, if your wallet's name prop isPetra
, then the window should bewindow.petra
.
NOTE2 window object key (i.e
window.<name>
) has to be lowercase exact match (petra
). Wallet name prop can have capitalization (Petra
/PetraWallet
)
- Make sure the
Window Interface
has<your-wallet-name>
as a key (instead ofaptos
) - Open
__tests/index.test.tsx
and changeAptosWallet
to<Your-Wallet-Name>Wallet
- Run tests with
npm run test
- all tests should pass
At this point, you have a ready wallet class with all required properties and functions to integrate with the Aptos Wallet Adapter.
Publish as a Package
Next step is to publish your wallet as a npm package so dapps can install it as a dependency.
- Make sure to update
package.json
name, description, author and any other properties. - Run
npm install
thennpm run build
- adist
folder should be available - (optional) Run
npm publish --dry-run
to see what would get published (make sure there is adist
folder)
Creating and publishing scoped public packages https://docs.npmjs.com/creating-and-publishing-scoped-public-packages
Creating and publishing unscoped public packages https://docs.npmjs.com/creating-and-publishing-unscoped-public-packages
Add your name to the wallets list
Once the package is published, you can create a PR against the aptos-wallet-adapter repo and add your wallet name as a url to the npm package to the supported wallet list on the README file.
Note: if your wallet provides function that is not included, you should open a PR against aptos-wallet-adapter in the core package so it would support this functionality. You can take a look at the
signTransaction
on the wallet core package