Kickstarter project is awesome for people to pledge and support a project they believe in. By combining NFT with supporting a clause we think it can be something trendy yet fun to get some exposure with XRP's NFT.

What it does

This app allows any user with an XRP account to launch a Pledge project to ask for funding. The transaction can only happen with the available NFTs (amount of pledge supporters is limited). This is intentional to allow the issuer to be more deliberate and have closer interaction with their supporter.

  1. User will create a Pledge for listing by stating the amount of NFT up for grabs and the minimum price for each NFT.
  2. App will help the user to Mint and CreateBuyOffer, by assigning us (the App)
  3. As a broker, it is fully automated to close the transaction once the Pledge offer has been made.
  4. Users can browse the listing page to search for a pledge of their interest.
  5. To Pledge, the user is required to use Xumm to sign for the payment of the NFT.
  6. The detailed view of the Pledge summary can be viewed on the Single Page. This includes the supporter XRP address.

How we built it

The key XRP features we leverage are: Broker Sales Batch Mint NFT Mint and Burn NFT

We also use other third-party services to facilitate the development. These include:

  • Xumm App for the regular user to sign transactions.
  • Cloud MongoDB for storage.
  • Cloudinary for storing Images as NFT Uri. (May improve IPFS in the future)

Lastly, we use MUI free template which is built on top of Next.JS coupled with Vercel for the hosting platform.

Challenges we ran into

The most notable challenge is trying to workaround multiple transactions (eg. Minting & CreateSellOffer for NFT) within a single signed transaction using Xumm Apps. We spend quite a huge amount of time trying to work around this to no avail.

In the end, we ended up requiring the user to submit their Seed token for us to perform batch minting and create a sell offer. Is less secure, however, we do our best by mentioning Seed token is only used on the front end. Thus, reducing the exposure to security risk.

Accomplishments that we're proud of

We are happy to be able to complete it on time as we started the project late. The app turned out well, and it served its purpose to help people in need to request help and liquidity by providing NFT.

At the time of development, we make sure that we support all the different networks gracefully. For that, we are proud to say that, the app is fully functional and ready for the mainnet, only pending us to activate the Broker account on the mainnet.

What's next for XRP Pledge

A few of the improvements can be worked on in the future to make the app more complete include:

  • Convert Cloudinary to IPFS storage.
  • Search for Pledge.
  • Delete/Remove pledge.
  • Error Handling for external requests.
  • Location-aware pledge.
  • Share to social media.

Built With

  • next.js
  • react
  • vercel
  • xrpl.js
Share this project: