Inspiration
Solana NFTs are not truly self-custodial yet. When they are minted via Metaplex's protocol, some Arweave wallet out of the minters' control uploads the artwork to Arweave, and the minter only receives a representation of that artwork (NFT contains URL to image on Arweave). For true self-custody, minters and subsequent owners should own the Arweave wallet that uploads the artwork as well.
What it does
dat.cash is a wallet that abstracts away both the Arweave and Solana wallets behind one clean, NFT-oriented interface. When minting an NFT through the wallet, the chosen image will be uploaded through the Arweave wallet housed by the dat.cash interface, and a corresponding Solana NFT will be created as well, to represent ownership on Solana.
How we built it
We used Vue.js for the front-end and incorporated various APIs (including MagicEden's) for informational/UX purposes.
We also interacted with the Solana JSON RPC API and Arweave APIs to handle submitting transactions to these chains.
Challenges we ran into
Handling the Arweave upload, and having a successful upload trigger the corresponding NFT creation on Solana was a tricky piece of logic to figure out. We also had to think about how we would handle subsequent ownership transfer of the NFT (currently in development).
Accomplishments that we're proud of
A clean UI with bare bones NFT-oriented features.
What we learned
How to interact with the Arweave and Solana APIs efficiently, and how to handle various async loading patterns with Vue.
What's next for dat.cash
We're continuing with development, and will be looking to raise a seed round in the near future once we solidify future plans and our story.
Built With
- arweave
- coingecko
- magiceden
- solana
- vue.js
Log in or sign up for Devpost to join the conversation.