Tip or Donate KSM Embeddable Button
- Proposer: https://github.com/Shard-Labs
- Payment Address: bc1q5njhr3r0mgd398yvma75nv48g69c590a0f0zcx
This application is in response to following RFP https://github.com/w3f/General-Grants-Program/blob/master/rfp-proposal/ksm-tipping-button.md
As proposed in the RFP we will make a standalone embedded "Tip or Donate KSM" button with customizable text by the website owner. The button's embedded code will sanitize the current URL, check if the tip for the same URL already exists and is active. If available and once clicked button will ask for permission to connect to PolkadotJS extension, offer to Propose Tip or Donate directly. If proposing a tip, it will inform the user of the funds needed to propose a tip (transaction fee and deposit), check if the user is a Council member and optionally allow him to attach a message. Only Council members are allowed to propose the amount once the tip has been created. Once the tip is proposed the button will be disabled. If donating directly it will ask for an amount and allow visitor to enter a custom note.
Considering the request for this implementation not slowing down the websites and several performance tests from different sources exhibiting Svelte as the optimal choice performance-wise we are strongly considering using Svelte as a development framework. Before committing to that decision we will conduct the performance tests ourselves and decide if it is the optimal solution. We will be using polkadot.js API.
- Darko Mačešić
- Ana Milić-Štrkalj
SHARD LABS d.o.o., Kroz Smrdečac 19 Split, Croatia
We have experience in several private and open source projects. Most notable and relatable to the proposal:
- Ink! Remix plugin https://github.com/Shard-Labs/ink-remix-plugin
- Zokrates https://github.com/Zokrates/ZoKrates https://github.com/Shard-Labs/zokrates-remix-plugin
- Sourcify https://github.com/ethereum/sourcify
Team Code Repos
Team LinkedIn Profiles
- Total Estimated Duration: 2 months
- Full-time equivalent (FTE): 4 weeks
- Total Costs: 0.75 BTC
- Estimated Duration: 3 weeks
- Costs: 0.25 BTC
|1.||Embedded code||Removing the UTM, hashes, converting URL to bytes, checking if a tip for the same URL already exists and is active, if not the button is available.|
|2.||Connecting to PolkadotJS extension||If none is present, offer to install it. If allowed, a popup asking to select an account. If denied, cancel all. Offer two options: propose a tip or donate directly (text is customizable).|
- Estimated Duration: 1 month and 1 week
- Costs: 0.5 BTC
|1.||Propose tip||Inform user of the funds needed for tip proposal (deposit and transaction fee). If a user is a Council member ask for the amount and create a new Tip. If a user is not a Council member, create a new Tip entry without specifying the amount (only Council members are allowed to do so). Allow user to attach a message. Disable button and link to tips page in treasury after Tip is created.|
|2.||Donate directly||Ask the user for an amount to donate and allow him to enter a custom note.|
|3.||Testing||We will conduct testing of the developed functionalities on Westend testnet.|
|4.||Article on Medium||After finishing with development and testing we will publish an article on Medium describing our work done for the project, and a tutorial on how to integrate it into existing websites.|
- Are there are any teams who have already contributed (financially) to the project? No.
- Have you applied for other grants so far? We have received funding and completed Ink! Remix plugin.