Get Started
To run a basic dapplet, follow these steps.
Dapplet Template repository locally.#
1. Clone- SSH
- HTTPS
- GitHub CLI
package.json
file.#
2. Change module name from "dapplet-template.dapplet-base.eth" to yours in package.json
and dapplet.json
.#
3. Fill in fields in the manifests src/icons
folder.#
4. Change icons to yours in The icon src/dapplet-icon.png
is used for the injected button in source code src/index.ts
and for display in the Dapplets store. The link to this icon is defined in dapplet.json
manifest.
config/schema.json
file.#
5. Edit necessary Dapplet settings in the The default setting values are defined in config/default.json
file.
The schema follows the rules defined in the http://json-schema.org/.
The Dapplet settings UI is generated by react-jsonschema-form.
There are three environments:
dev
- used when a module is loaded from development server;test
- used when a module is loaded from Test Dapplet Registry;prod
- used when a module is loaded from Production Dapplet Registry;
#
6. You can use another Adapter in your Dapplet.Dependencies are defined in the dependencies
section of the dapplet.json
file and are injected in the dapplet's index.ts
file.
The Twitter adapter is used by default.
Our list of adapters available at the moment:
- twitter-adapter.dapplet-base.eth - site-specific adapter for Twitter;
- instagram-adapter.dapplet-base.eth - site-specific adapter for Instagram;
- identity-adapter.dapplet-base.eth - virtual adapter (interface), which is an abstract of two adapters above;
- common-adapter.dapplet-base.eth - viewport adapter is a universal adapter which contains generic insertion points and is compatible with any web-sites.
See for more here.
contextIds
section of the dapplet.json
file.#
7. Fill in ContextId
is an identifier of a context to which your module is bound. This is usually the same as the name of an adapter you are using. It may be:
- the name of an adapter you depend on (e.g.
twitter-adapter.dapplet-base.eth
); - the domain name of a website to which you are creating a dapplet (e.g.
twitter.com
); - the identifier of a dynamic context (e.g.
twitter.com/1346093004537425927
).
/src/index.ts
module and add method activate()
with a simple dapplet code.#
8. Specify the argument of @Inject decorator with chosen adapter in the Installation steps.#
9. Install the Dapplet Extension for your Chrome browser (if not installed) - follow the#
10. Install dependencies and run the code:You will see a message like this:
The address http://localhost:3001/dapplet.json is a link to your dapplet manifest file. Copy it to clipboard.
#
11. Connect the development server to Dapplet Extension.Paste URL to Developer tab of Dapplet Extension's popup and click Add.
You will see your module in the list of development modules. Here you can start the deployment process.