Polkassembly Logo

Create Pencil IconCreate
OpenGov

Notice: Polkadot has migrated to AssetHub. Balances, data, referenda, and other on-chain activity has moved to AssetHub.Learn more

View All Medium Spender

Bagpipes - Powerful No-code Cross-Chain XCM Dapp and Workflow Builder for the Polkadot Ecosystem 🪄

inMedium Spender
2 years ago
development
ux
xcm
dapp
opensource
Executed

Project Name: Bagpipes

Description:  Powerful No-code Cross-Chain XCM Dapp and Workflow Builder for the Polkadot Ecosystem 🪄

Authors: Ramsey Ajram, Filip Kalebo

Total Amount: 151,500 USD (DOT 25,910.7234) Converted into DOT at the ema30 price of: 5.847 USD/DOT

Beneficiary: “Bagpipes Org Multisig:” 15iN8aQnPuX4vjcovenu15EtnYfcwbtiXjeKGRN3KkkzNNtt

ETD: 6 to 8 months

Milestones: 4

Full Proposal Link: https://docs.google.com/document/d/1vpZPQCi11ja8fGcJ--ucjymMNG4BzQdsVFa4MKUunZU/edit?usp=sharing

Intro Post:   https://forum.polkadot.network/t/powerful-no-code-cross-chain-xcm-dapp-builder/4767

Links:WebsiteDocsRepo

Image

Short Summary:

Question: How can we make all the available pallets over the XCM abstraction layer easier to compose on top of a single no-code environment? 

Answer: Bagpipes.

Bagpipes can help to unlock the possibilities of cross-chain, and make it simple and accessible so that anyone can solve their own problems and realize their ideas seamlessly. 

Bagpipes is a drag and drop workflow builder for web3, allowing people to quickly create and compose custom cross-chain application flows in a no-code way, kinda like a “Zapier for Web3”.

All while embodying web3 values of self-sovereignty and open source code.

This treasury propsoal seeks to get 6 to 8 months of funding for further developement so that we can include all the key pallets and features of the Polkadt runtime and SDK. 


Motivation

#simple and #accessible

We wanted to make building things on web3 attainable to more than the “hard core” developer community.

There are various successful drag and drop tools that have given superpowers to people in building “web2” applications, to name a few:

  • API workflows: with Zapier.com, Make.com and n8n.io (open source option);
  • Creative web design: with Figma
  • Learning to code, like SAM labs which teaches children how to program and visualize the logic blocks of the program.

We are heavily inspired by the power that these tools bring to users in their respective industries, all with the common trait of building from a birds-eye-view and dropping blocks of abstracted code. So we’ve made it our mission to make web3 accessible to a community of creative problem solvers who will leverage Bagpipes’ no-code interface that will enable the user to seamlessly build powerful and secure cross chain workflows, mini dapps, internal tools and fully functioning dapps, with such rapidity to make the user feel like they have superpowers.

Tools for the next wave of web3 builders.

In the next 5 years web3 tools will be seamlessly integrated into the stack of millions of developers and automators. And web developers can leverage these tools with ease. As demand for web3 increases and push factors start to set in, businesses, entrepreneurs and freelancers will require attainable solutions. Our glimpse of the future is that people will be able to compose Dapps that leverage multiple chains, pallets, contracts, features and SDKs. And as the ever looming AI wave draws closer, generative AI will be baked into how we design our platform too. LLMs are great at coding, but even better at coding with black box code blocks.


Problem statement

  • In polkadot and web3 in general, there is a gap between realizing ideas and having the expertise, time or resources to deliver them.
  • There are many knowledgeable non-technical (and technical) active users that could automate their processes, if they either had the skill set, or had the time.
  • Interaction with chains is still only accessible for developers.

Currently, XCM based parachains have their own native apps containing their own features, which are each useful for their chains, pallets and features. However cross-chain infrastructure demands better ways that harness such an interoperable environment.

With “XCM” coming into maturity, we have the possibility to build on this higher abstraction layer, enabling apps which can leverage features and pallets from different chains. Wallets are surely not the end game for XCM Dapps. Wallets currently fill the gap of enabling some cross chain functionality, but these are hard-coded and limited to what the wallet providers desire to prioritize. If a user wants to make use of multiple chain features, they have to independently go to each chain to execute the transaction. This manual process is inefficient and laborious. What is required is a place that allows the user to cherry-pick features from different chains and build workflows specific to their needs.


Solution

bagpipes polkadot to hydradx swap to asset hub

Welcome to Bagpipes, a user-friendly solution designed to enable cross-chain interactions within the Polkadot ecosystem. Bagpipes serves as a "Zapier for Web3," offering a user-friendly drag-and-drop interface that empowers developers and users to effortlessly build applications and interact with on-chain features. Bagpipes allows users to connect actions across different chains, leveraging pallets and logic to automate repetitive and laborious tasks.


Mission

To make a wide selection of features from chains, which are connected to cross-chain infrastructure, accessible and connectable, all in one place. Bagpipes allows anyone to create cross chain transaction flows in an easy to use drag and drop style interface.

As the features we add from different chains increase, the usefulness and possibilities will compound, opening the door for many workflow scenario possibilities that we have not yet seen or considered.

Minutes not weeks

It can take minutes rather than days or weeks to put together novel and useful workflows that will contain a variety of features from various chains, including: assets, DEXs, GOV, NFTs, Identity, Scheduling, Staking, Defi, etc.

Abstracting away complexity

In the “Web2” world, no-code apps are powerful tools that just makes building faster. There are many examples of no-code platforms that enable simplicity with a birds-eye view clarity, and in many cases, without much loss of customizability. Think of middleware API builders such as Zapier, or Make; and for building web pages and UIs, think of Webflow and Figma. We aim to create similar experiences for Web3 and the Polkadot ecosystem. This will be attractive for new active participants in the ecosystem to be able to weave together transaction flows that fits their use-case without having to learn how to interact with pallets, Polkadot.js or similar under the hood functionality, allowing people to quickly create MVP’s, prototypes and cross chain applications.


Minutes not weeks

It can take minutes rather than days or weeks to put together novel and useful workflows that will contain a variety of features from various chains, including: assets, DEXs, GOV, NFTs, Identity, Scheduling, Staking, Defi, etc.


We Currently Support

As we have completed 2 milestones from W3F grants, and have continued building for another 8 weeks, we have made continuous progress, and have introduced more features, such as: support for a DEX, web tools like webhooks and http requests, and have transformed the U/X.

Wallets/Signers

Image

Image

Image

Image

Image

Image

Subwallet

Talisman

Polkadot JS Extension

Nova

Metamask

Fearless

Thanks to Subwallet for making it easy for us to integrate multiple wallets with subconnect for our initial MVP. 

Chains

Polkadot ForumImageImageImageImageImage
PolkadotKusamaHydraDXMoonbeamAssetHubInterlay

We support the basic XCM cross-chain transfers for the chains ( shared above). 


Core Team

null

Ramsey Ajram

Hi I’m Ramsey, I’ve been interested in building something that makes this ecosystem - of parachains, primitives, pallets and tools - more accessible to more people, especially the creative and entrepreneurial minds who have a desire to solve their own problems and/or solve other people’s problems, so they can be more effective at experimenting and realizing their ideas and automating their systems and processes..

I have quite a wide ranging experience in the ecosystem. I discovered the Substrate framework in December 2020. I’ve spent 6 months getting my bearings, watching a bunch of Dan Forbes weekly substrate videos. Followed Josh Orndorff’s breadcrumbs, and nagged Dan Shields for answers.

I’m very familiar with the substrate/polkadot repo, and have launched a live parachain, taking it through a crowdloan on Kusama (kabocha parachain).

I am the product owner of “supersig” pallet+UI, (where you can create an org, like multisig but you can add and remove members).

I then attended the Polkadot Blockchain Academy, which took me from a hacky mechanic to a blockchain engineer. . And now I want to leverage all of that experience and knowledge gained, channel it into Bagpipes, and make life easier and fun for the next wave of users.

null

Filip Kalebo

Started working with information security in 2011 with a love for open source and an urge to explore. Since then, Filip has worked on offensive security for several Fortune 30 companies, trained a red team responsible for finding bugs in Amazon, Facebook and several large entities.

In the defensive line, Filip has worked on enterprise intrusion detection systems and anti-malware projects.

In 2014, he started to operate a public Bitcoin node service, thereafter snowballing into Ethereum and Monero development. Filip was introduced to Rust at an OpenSource meetup a few years ago, and is now combining his passion for Rust and web3. In 2021, he started as one of the first Rust developers for early stages of Picasso chain, moved a year later to Edgeware to perform a major substrate version upgrade, and from the pains of this experience, he was compelled to work on an open source project called Uptest, which was funded by the Polkadot Treasury.


Ideas and Use Cases

Here are a couple ideas about what you can build with Bagpipes. This is intended to get the juices flowing and give you some real context. Hopefully you can come up with even more awesome ideas and let us know.

Send -> Swap -> Send 

This is a Web3 only use case (available now):

Here we swap some DOT (from polkadot) to USDT and send to AssetHub in one fell swoop.

Save time jumping from 2 platforms, and making 3 separate signing actions, into 1 single signing ceremony, then execute the scenario.

Polkadot Node ->xTransfer Action ->HydraDX node -> Swap action -> HydraDX nodexTransferAction ->AssetHub node
Select from the dropdown menu chain name, asset, address, amountSend DOT from Polkadot to HydraDXThe node swap node pattern lets you choose which asset you want to exchange.then send the USDT to AssetHub.Receive the funds to the defined address on Asset Hub

Image

The above bagpipes contain the nodes and actions to execute a send swap send in one signing ceremony. Meaning that you sign all the transactions safely at the beginning and then the flow is executed without interruption.


“The Witty Tweeter” Bagpipe

This is a Web3 to Web2 flow (available soon):

This is a Bagpipe use case that we have received from feedback from a notable user in the ecosystem.

Image

The websocket it listening for referendum vote events, with filtering logic for critical moments, the http request gets the proposal from ~polkassembly, the GPT Assistant is programmed to be witty and concise, reads the proposal understands the event, curates and tweet, and then the final http request sends the tweet. 

WebsocketWebsocket → HTTP Request edgeHTTP RequestGPT AssistantHTTP Request
Listen for Votes on referendums on PolkadotCheck if the referendum is at an exciting moment (50/50 turning point)If yes, then:

Get the related proposal
Define ChatGPTs system_message and prompt to curate a witty tweet related to the voting event and proposal info.Send Tweet

Benefits to the ecosystem

  • Rapid: Quicker and easier to actualise ideas.

  • Inclusive: more people can become active builders.

  • Efficient: Time and resources can be saved on the repetitive and redundant elements.

With more ideas being experimented, and more people involved in the building process, all in less time, can lead to increased quality tools, utilities and cross chain Dapps.


Safety and Security:

From the way the user interacts and experiences Bagpipes, to providing warnings and risk messages, we always think defensively for our own code and for users. Currently we are in alpha so only the most curious and competent testers are advised to use Bagpipes. When we have a secure, well tested release then we will be happy to promote our product.

We only integrate well vetted projects that have a strong reputation and track record, whether web2 or web3.


Open Source Web3 Values:

  • Open source

  • Non custodial

  • Host/Run your own instance

  • Interact directly with the chains, no hidden transaction fees or extra usage costs.


Continuous building and learning from users

We continue to build and we are not stopping based on the treasury funding process. We strive to create something useful for people, we are getting a lot of interesting feedback and conducted product interviews with users who are excited to use Bagpipes to solve their pains and realize some of their previously unattainable wishes.


Milestones/Budget breakdown 

M0: Core Web Tools

Estimated delivery: 

Release version: 

Time: 

FTE:
5 to 7 weeks

0.1.0

245 Hours

2
In Progress
No.NameDescriptionFTETotal Hours:
0DockerDocker instance for instant self hosting15
1DocumentationUser guides and documentation110
2Webhooks ModuleWebhooks module for all scenarios (details below).250
3HTTP Requests ModuleAn HTTP module that enables users to make http requests and receive event data that can be used in the workflow. (details below)260
4Control Panel with Pill NodesA Pill Node is a placeholder event object key that can be dragged and dropped into a field. It is a variable that represents a value not yet known. . 



The Control Panel is a menu that contains all the no-code tools such as event objects, logic statements, and crypto utilities (hashing, etc). 



The user can Drag and drop Pill nodes into input fields as well as add logi statements such as “if/else then/else’, switch statements, etc.
120
5UI Second VersionRedesign of UI with clean nodes, toolbar, popover menus and submenus.1100
Total:245

Milestone Feature information:

further details in our main doc

M1: Polkadot Core Primitives: Actions, Templates, Remarks and Queries

Estimated delivery: 

Release version: 

Time: 

FTE:
6 to 8 weeks

0.2.0

370 Hours

2
no.NameDescriptionFTETotal Hours:
0DockerDocker instance for instant self hosting15
1DocumentationUser guides and documentation on a clean Docusaurus v2 site120
2RemarkAction: System -> Remark Integrate on-chain remarks as in action type in the UI playground.230
3TemplatesCreate and/or use templates generated from workflows (features below)285
4APIAll milestones features available in Bagpipes JSON http api.230
5QueryAction: Support querying for 6 pallets focussing on the main methods of each pallet (details below)2150
6TestsFull test suit coverage for UI and API230
7Project managementCommunity communication, release notes, bug tracking, QA220
Total:370

An action is a Bagpipes term for executing some kind of action, whether or not it requires signing. 

Milestone Feature information:

further details in our main doc

M2 - OpenGov and Staking 

Estimated delivery: 

Release version: 

Time: 

FTE:
5 to 7 weeks weeks

0.3.0

295 Hours

2

Number

Name

Description

FTE

Total 

hours:

0

Docker

Docker instance for instant self hosting

1

5

1

Documentation

User guides and documentation

1

20

2

Vote and Delegate

  • Support for voting in referendums. (Add a warning message for the new multiple lock period.)

  • Polkadot delegate voting power action

2

80

3 

Staking 

  • Bond/Unbond to nomination pools Polkadot bond to nomination pool action / form/ table view


  • Nominate validator Polkadot Nominate validator action / form

1

60

4

API integration

Features made available in Bagpipes API.

2

20

5

Project management

Community communication, release notes, bug tracking, QA

1

20

6

Scenario Template improvement

Scenario Template sharing feature improvement. 

¨C8C

Thumbnail image generation. Preview linked scenario image with OpenGraph.

2

50

7

Tests

Full test suit coverage for UI and API

2

40

   

Total:

295

Milestone Feature information:

further details in our main doc

M3 - Ink/Smart Contracts, Light Client (Smoldot) and Mobile view:

Estimated delivery: 

Release version: 

Time: 

FTE:
8 to 10 weeks

0.4.0

605 Hours

2
No.NameDescriptionFTETotal Hours:
0DockerDocker instance for instant self hosting15
1DocumentationDocumentation and user guides120
2Ink integrationAbility to create and interact with Ink smart contracts2140
3Smoldot supportSupport for connecting to chains with Smoldot light client2100
4Mobile compatible UISimplified mobile UI Support2100
5TestsFull test suit coverage for UI and API140
6API integrationAll milestones features available in Bagpipes API.280
7Project managementCommunity communication, release notes, bug tracking, QA220
Total:605

Milestone Feature information:

further details in our main doc

Milestones Summary

No.NameDescriptionTotal HoursCost per Milestone @

$125/hr $100/hr
M0Core Web ToolsWebhooks Module, HTTP Requests  Module, Control Panel with Pill Nodes, UI Second Version245$24 500
:---:---:---------
M1Polkadot Core PrimitivesPolkadot Core Primitives:  and Actions, Templates, Webhooks, Remarks and Queries370$37 000
:---:---:---------
M2OpenGov and StakingVote and Delegate, Staking, AssetHub, API integration, Project management, Scenario template improvements.295$31 500
:---:---:---------
M3Ink/Smart Contracts, Light Client (Smoldot) and Mobile viewInk integration, Smoldot support, Mobile compatible UI, SDK/ API  integration and documentation revamp605$60 500
:---:---:---------
Total:1515$151 500

Delivery

All code will be publicly available on our Github: https://github.com/xcmsend.

Releases together with project updates will be reported to the community on a monthly basis.

If you want to get updates more frequently, feel free to tune into our discord server:

Bagpipes Org Discord link

Public Documentation: 

All documentation and user guides will be published here:

https://xcmsend.github.io/

Public instance: 

Bagpipes Org, will provide a free public instance of the latest version of Bagpipes, hosted here: https://app.xcmsend.com

Docker images:

We maintain docker images that are synced to the public releases here: https://hub.docker.com/r/xcmsend/xcmsend

https://xcmsend.github.io/deployments/docker.html

Funding Terms:

**Project multisig address: (**Bagpipes Org) 15iN8aQnPuX4vjcovenu15EtnYfcwbtiXjeKGRN3KkkzNNtt

The funds will be sent from the Treasury to a â…” multisig with the members:

  • Rust Syndicate (FIlip) — 16Ziip8mK44sh7uKFkZgHbapxoKrRxriZaDdzqNAPW9Wr6x4

  • Decentration (Ramsey) - 16Uj8FfDPhYNbK3nErtwUk9eiXy5j5JLux61QcjRbMJiiHW7

  • JelliedOwl  (Paul) -  15AxeitVU5FQ5nV8P9Dr7AXXNQBXgFSem7NZv4cicxeTK4v4

  • Funds will be paid out on a monthly basis. (50% will be managed by Rust Syndicate and 50% by Decentraiton).

  • Some funds will be liquidated and some will be staked.

  • Funds will not be used to vote on any project that involves Rust Syndicate or Decentration.

We ask the treasury for a total of 151 500 USD, converted in DOT using the EMA30(5.847) rate from Subscan. JelliedOwl(Paul) is an rpc provider and an independent third party to act as a third signatory.

We appreciate your support and look forward to making Polkadot the most simple, usable and accessible software for cross-chain dapp building. 

Check out the main doc for more details.

Comments (9)

2 years ago

Requester address: 16Ziip8mK44sh7uKFkZgHbapxoKrRxriZaDdzqNAPW9Wr6x4 Verified identity: Yes When registered/verified: 8 Nov 2022 / 8 Nov 2022 Previous OpenGov TPs from this account: None W3F Grants: Yes - https://github.com/w3f/Grants-Program/pull/1937

2 years ago

@BILL 
Hey Bill,

Filip here. The account has previously delivered the gov1 proposal for the tool uptest: https://polkadot.polkassembly.io/treasury/186 .

Uptest has been delivered and is avaliable on github: https://github.com/uptest-sc/uptest
Code examples: https://github.com/uptest-sc/uptest/tree/main/examples

crates.io:
https://crates.io/crates/libuptest
https://crates.io/crates/uptest-cli

Documentation:
https://uptest-sc.github.io/

Latest version of libuptest is v0.1.41, the next version will contain the latest Jsonrpsee crate, which contains socks5 support, which is a feature uptest has been pushing for, I even made a RFP for this feature(https://grants.web3.foundation/docs/RFPs/jsonrpsee-proxy-support). Thanks to the Jsonrpsee maintainers, uptest will soon be able to support connection to .onion ws endpoints, which is a fun new feature.

Uptest has been funded for 3 months and I'm still maintaining it, pushing code.

We actually would love your feedback on Bagpipes and get your take on what pallets and further functionality you think is important to have in a drag and drop UI like bagpipe.

Feel free to reach out to me directly on matrix: @flipchan:matrix.org

We are really excited to see future users use our drag and drop tool!

2 years ago

As a non-developer, this looks like something that will be extremely beneficial. Well put together proposal, Aye.

2 years ago

@WOJDOT ʕ •ᴥ•ʔ

Thanks for the support @WOJDOT. If you like come and sign up as our first batch of Bagpipers when we launch the new release : D https://bagpipes.io

Load more comments
PleaseLogin to comment

Requested

DOT
25.91K DOT

Proposal Passed

Help Center

Report an Issue
Feedback
Terms and Conditions
Github

Our Services

Docs
Terms of Website
Privacy Policy

A House of Commons Initiative.

Polka Labs Private Limited 2026

All rights reserved.

Terms and ConditionsTerms of Website
Privacy Policy