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
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.
#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:
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.
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.
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.
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.
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.
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.
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.
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.
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
Polkadot |
Kusama |
HydraDX |
Moonbeam |
AssetHub |
Interlay |
We support the basic XCM cross-chain transfers for the chains ( shared above).
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.
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.
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.
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 node |
xTransferAction -> |
AssetHub node |
Select from the dropdown menu chain name, asset, address, amount |
Send DOT from Polkadot to HydraDX |
The 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 |
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.
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.
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.
Websocket |
Websocket → HTTP Request edge |
HTTP Request |
GPT Assistant |
HTTP Request |
Listen for Votes on referendums on Polkadot |
Check 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 |
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.
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
Non custodial
Host/Run your own instance
Interact directly with the chains, no hidden transaction fees or extra usage costs.
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.
Estimated delivery: Release version: Time: FTE: |
5 to 7 weeks 0.1.0 245 Hours 2 |
In Progress |
No. |
Name |
Description |
FTE |
Total Hours: |
---|---|---|---|---|
0 |
Docker |
Docker instance for instant self hosting |
1 |
5 |
1 |
Documentation |
User guides and documentation |
1 |
10 |
2 |
Webhooks Module |
Webhooks module for all scenarios (details below). |
2 |
50 |
3 |
HTTP Requests Module |
An HTTP module that enables users to make http requests and receive event data that can be used in the workflow. (details below) |
2 |
60 |
4 |
Control Panel with Pill Nodes |
A 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. |
1 |
20 |
5 |
UI Second Version |
Redesign of UI with clean nodes, toolbar, popover menus and submenus. |
1 |
100 |
Total: |
245 |
further details in our main doc
Estimated delivery: Release version: Time: FTE: |
6 to 8 weeks 0.2.0 370 Hours 2 |
no. |
Name |
Description |
FTE |
Total Hours: |
---|---|---|---|---|
0 |
Docker |
Docker instance for instant self hosting |
1 |
5 |
1 |
Documentation |
User guides and documentation on a clean Docusaurus v2 site |
1 |
20 |
2 |
Remark |
Action: System -> Remark Integrate on-chain remarks as in action type in the UI playground. |
2 |
30 |
3 |
Templates |
Create and/or use templates generated from workflows (features below) |
2 |
85 |
4 |
API |
All milestones features available in Bagpipes JSON http api. |
2 |
30 |
5 |
Query |
Action: Support querying for 6 pallets focussing on the main methods of each pallet (details below) |
2 |
150 |
6 |
Tests |
Full test suit coverage for UI and API |
2 |
30 |
7 |
Project management |
Community communication, release notes, bug tracking, QA |
2 |
20 |
Total: |
370 |
An action is a Bagpipes term for executing some kind of action, whether or not it requires signing.
further details in our main doc
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 |
|
2 |
80 |
3 |
Staking |
|
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. ¨C8CThumbnail image generation. Preview linked scenario image with OpenGraph. |
2 |
50 |
7 |
Tests |
Full test suit coverage for UI and API |
2 |
40 |
Total: |
295 |
further details in our main doc
Estimated delivery: Release version: Time: FTE: |
8 to 10 weeks 0.4.0 605 Hours 2 |
No. |
Name |
Description |
FTE |
Total Hours: |
---|---|---|---|---|
0 |
Docker |
Docker instance for instant self hosting |
1 |
5 |
1 |
Documentation |
Documentation and user guides |
1 |
20 |
2 |
Ink integration |
Ability to create and interact with Ink smart contracts |
2 |
140 |
3 |
Smoldot support |
Support for connecting to chains with Smoldot light client |
2 |
100 |
4 |
Mobile compatible UI |
Simplified mobile UI Support |
2 |
100 |
5 |
Tests |
Full test suit coverage for UI and API |
1 |
40 |
6 |
API integration |
All milestones features available in Bagpipes API. |
2 |
80 |
7 |
Project management |
Community communication, release notes, bug tracking, QA |
2 |
20 |
Total: |
605 |
further details in our main doc
No. |
Name |
Description |
Total Hours |
Cost per Milestone @ $125/hr $100/hr |
M0 |
Core Web Tools |
Webhooks Module, HTTP Requests Module, Control Panel with Pill Nodes, UI Second Version |
245 |
$24 500 |
---|---|---|---|---|
M1 |
Polkadot Core Primitives |
Polkadot Core Primitives: and Actions, Templates, Webhooks, Remarks and Queries |
370 |
$37 000 |
M2 |
OpenGov and Staking |
Vote and Delegate, Staking, AssetHub, API integration, Project management, Scenario template improvements. |
295 |
$31 500 |
M3 |
Ink/Smart Contracts, Light Client (Smoldot) and Mobile view |
Ink integration, Smoldot support, Mobile compatible UI, SDK/ API integration and documentation revamp |
605 |
$60 500 |
Total: |
1515 |
$151 500 |
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:
All documentation and user guides will be published here:
Bagpipes Org, will provide a free public instance of the latest version of Bagpipes, hosted here: https://app.xcmsend.com
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
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.
Project Name: Bagpipes
Description: A no-code cross-chain XCM Dapp and workflow builder for the Polkadot ecosystem.
Authors: Ramsey Ajram, Filip Kalebo
Total Amount: $151,500 USD (25,910.7234 DOT)
Beneficiary: Bagpipes Org Multisig: 15iN8aQnPuX4vjcovenu15EtnYfcwbtiXjeKGRN3KkkzNNtt
Estimated Time: 6 to 8 months
Milestones: 4
Summary:
Bagpipes is a drag-and-drop workflow builder that allows users to create custom cross-chain application flows without coding. It aims to make cross-chain interactions simple and accessible, similar to "Zapier for Web3." The project seeks 6 to 8 months of funding to develop key features and pallets for the Polkadot runtime and SDK.
Motivation:
The goal is to make web3 building accessible to non-developers by providing tools like webhooks, HTTP requests, and a user-friendly interface. This will enable rapid creation of cross-chain workflows, mini dapps, and internal tools.
Problem Statement:
Current cross-chain interactions are complex and require technical expertise. Bagpipes aims to bridge this gap by offering a no-code solution that allows users to easily compose and execute cross-chain transactions.
Solution:
Bagpipes provides a user-friendly interface to connect actions across different chains, leveraging pallets and logic to automate tasks. It supports basic XCM cross-chain transfers and aims to integrate more features like DEXs, governance, and NFTs.
Mission:
To make cross-chain features accessible and connectable in one place, allowing users to create transaction flows with ease. The project aims to reduce development time from weeks to minutes.
Current Support:
Bagpipes supports multiple wallets (Subwallet, Talisman, Polkadot JS Extension, Nova, Metamask, Fearless) and chains (Polkadot, Kusama, HydraDX, Moonbeam, AssetHub, Interlay). It also includes web tools like webhooks and HTTP requests.
Core Team:
Use Cases:
Benefits:
Safety and Security:
Bagpipes prioritizes user safety with warnings and risk messages. It integrates well-vetted projects and aims for a secure, well-tested release.
Open Source Values:
Milestones:
Delivery:
Code will be publicly available on GitHub, with monthly updates and a public instance hosted at app.xcmsend.com. Docker images will also be maintained.
Funding Terms:
Funds will be managed via a ⅔ multisig with members from Rust Syndicate, Decentration, and JelliedOwl. Payments will be made monthly, with some funds liquidated and some staked.
I think it is what Polkadot needed right now. It is 100% matching with Gavins's Accords idea, full support !
As a non-developer, this looks like something that will be extremely beneficial. Well put together proposal, Aye.