ParaSpell
- Team Name: ParaSpell✨
- Payment Address: 0xB7d45Ef044fD9342e4c03e28D9e9bddA2d4Fe3e1 (USDC)
- Level: 1 🐣
Project Overview 📄
Previously completed grants:
What is ParaSpell: ParaSpell is XCM & XCMP Developer tool ment to ease integration of cross-chain functionality into dApps. As we have learnt by now, cross-chain experience between Parachains can be very diverse. ParaSpell means to unify this experience by doing all the research for developers. We have wrapped all XCM pallets from compatible nodes into simple patterns from which it is easy to create XCM call. As an example we provide image below.
In this image we can see, that ParaSpell saves much time to developers. Just one call can contain multiple lines of JSON which would otherwise have to be integrated manually by developer. ParaSpell does it in marginally less lines and hides complex logic of building message which ensures, that messages are constructed correctly. This call in the end results into following lengthy extrinsic:
Following extrinsic can be subscribed into and we can check for it's events on front end. ParaSpell provides front end for testing XCM transactions and XCM called UI-V2. This UI is also deployed on netlify so users only have to run local network to start testing. UI also provides ability to open or close HRMP channels or test out XYK pool functionality that was implemented in collaboration with HydraDX team. In the picture below we provide overview of the UI.
Overview 🎨
ParaSpell is split into three main repositories at the moment:
- XCM SDK: Meant to unify cross-chain experience on Substrate. Can serve any dApp developer that wishes to integrate XCM or other pallets support for they app.
- UI-V2: Allows for launching local network and testing XCM or HRMP channels across that local network
- Docs: Extensive documentary for overview of ParaSpell, guide for SDK and UI
SDK
This SDK currently support 42 compatible XCM nodes. They can transfer XCM messages in three different scenarios.
- Parachain to Parachain - HRMP
- Parachain to Relay chain - UMP
- Relay chain to Parachain - DMP
SDK contains many useful features that allow for easier inntegration:
-
Builder pattern implementation, easy to construct XCM calls, much more used recently for simplicity of implementation.
-
Suggestions, SDK contains TYPES that help to guide developer through integration. For example he get's compatible nodes suggested.
-
Console printouts, SDK allows for printing into console so developer can alway check if call they constructed is correct.
-
Exporting registered assets for each compatible node in many useful functions
-
Exporting supported XCM pallets for each compatible node in useful functions
And more..
UI-V2
UI is used as testing tool for Parachain developers, they can simply add their node into network and test it with HRMP channels as well as XCM transfers. UI also allows dApp developers to test and learn XCM before integrating it from our SDK.
UI is made to be as simple to use as possible. It is now also deployed on netlify so developers only have to start local network from configuration file provided by ParaSpell which starts network of Relay chain and 3 different Parachains (Bifrost,Karura & Pichiu)
Below are some examples of UI with running network:
Above we can see open/ close channel screen. It is simple to work with and intuitive. Nodes are pulled from relay chain by query so if network is not running you cannot see any nodes.
Above we can observe, that UI contains simple Wallet login with test accounts.
Above we can see XCM screen which is also very simple to navigate and nodes are pulled from relay chain by query.
Docs
Docs contain important information regarding SDK, UI and other repositories that are in ParaSpell or ParaSpell contributed to / collaborated with. The key areas are:
-
Introduction
-
Guide on importing SDK
-
Guide on launching local network and UI
-
Guide on executing operations in UI
-
Guide on implementing SDK
-
Important links