Monorepo contains the following XCM tools:
- XCM API (LightSpell⚡️): Meant to ease the integration of XCM interoperability into your dApp, offload your dApp from heavy computing and save you costs.
- XCM ROUTER (SpellRouter☄️): Meant to allow you to create XCM calls where you receive different assets than assets you send (Eg. Send -> DOT from Polkadot, receive ASTR on Astar)—all in just one call.
- XCM SDK: Meant to unify cross-chain experience on Polkadot and become a layer 2 protocol that allows for seamless integration of XCM into your dApps.
- XCM Analyser - Tool to convert XCM Multilocations to human readable format.
- XCM Visualizator - Tool to visualize XCM in Polkadot ecosystem
Other:
- XCM Tools playground: Playground for testing/trying all three mentioned XCM tools.
- XCM API landing page: XCM API Professional landing page.
Documentation:
- XCM Tools documentation: Comprehensive documentation for XCM tools mentioned above.
Monorepo infrastructure:
apps | - Playground
| - XCM API
| - XCM API Landing page
| - XCM Visualizator FE
| - XCM Visualizator BE
packages | - XCM SDK
| - XCM Router
| - XCM Analyser
Monorepo commands:
These commands will be run on all packages in monorepo.
-
Run compilation using
pnpm compile
-
Run formatter using
pnpm format:check
-
Run formatter with write permissions using
pnpm format:wríte
-
Run linter using
pnpm lint:check
-
Run unit tests using
pnpm test
-
Run integration tests using
pnpm test:integration
-
Run end-to-end tests using
pnpm test:e2e
-
Build all packages and apps using
pnpm build
-
Launch playground from the root using
pnpm run:playground
-
Launch XCM API from the root using
pnpm run:api
-
Launch the landing page from the root using
pnpm run:landing-page
-
Run asset update script for XCM SDK from the root using
pnpm run:updateAssets
-
Run existential deposit update script for XCM SDK from the root using
run:updateEds
-
Run pallet update script for XCM SDK from the root using
pnpm run:updatePallets
-
Run asset update script for XCM Router from the root using
pnpm run:updateRouterAssets
To run command only for specific package or app in monorepo use:
pnpm --filter <package_selector> <command>
or cd into appropriate folder.
Tools supported by: