GitHub - argentlabs/argent-x: ArgentX browser extension for StarkNet - made with...
source link: https://github.com/argentlabs/argent-x
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Table of contents
Example DApp
You can try the extension using our example DApp hosted at:
https://argentlabs.github.io/argent-x/
The example DApp is also contained in this repository.
Usage with your DApp
If you want to use this Starknet Wallet extension with your DApp, the easiest way is to checkout the @argent/get-starknet
package developed in this repo by running:
# starknet.js is a peer dependency yarn add @argent/get-starknet starknet
The package is a light wrapper around starknet.js to interact with the wallet extension. You can then use it like the following:
import { getStarknet } from "@argent/get-starknet" // check if wallet extension is installed and initialized. Shows a modal prompting the user to download ArgentX otherwise. const starknet = getStarknet({ showModal: true }) const [userWalletContractAddress] = await starknet.enable() // may throws when no extension is detected // check if connection was successful if(starknet.isConnected) { // If the extension was installed and successfully connected, you have access to a starknet.js Signer object to do all kind of requests through the users wallet contract. starknet.signer.invokeFunction({ ... }) } else { // In case the extension wasn't successfully connected you still have access to a starknet.js Provider to read starknet states and sent anonymous transactions starknet.provider.callContract( ... ) }
Checkout starknet.js to learn more about how to use Provider
and Signer
.
Install from sources
First clone this repository on your machine then run:
yarn # setup dependencies yarn build # run build process for all packages
Now you need to load the locally build chrome extension into your browser, by loading an unpacked extension from path packages/extension/dist
:
- Open the Extension Management page by navigating to
chrome://extensions
. - Enable Developer Mode by clicking the toggle switch next to Developer mode.
- Click the Load unpacked button and select the extension directory.
👩🏾💻 Development
To contribute to this repository please read the contributing guidelines first.
To setup the repo on your machine just run:
yarn # setup dependencies yarn dev # run build process for all packages in watch mode
This project contains 3 packages:
package description
extension ArgentX extension
get-starknet npm module to get started with starknet.js and ArgentX quickly
playground
example DApp for testing purposes and example for DApps how to use get-starknet
To test changes made to the extension
package you need to load the local unpacked extension into Chrome as described above. Changes are shown after reopening the extension. Changes to background.js
are just shown after a complete restart of the Chrome process.
Contributing
Everyone is welcome to contribute. Please take a moment to review the contributing guidelines.
Family and friends
Since this project were not possible without starknet.js a big thank you to all starknet.js contributors and @seanjameshan for starting it.
One more thank you to the Starkware Team and Discord.
👨🏼🎨 Authors and license
Argent and contributors.
GNU General Public License V3, see the included License.md file.
Coming soon
- Publish extension to Chrome Extension Store
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK