Inspiration
When building Swaplace we pretend to be building something simple, yet it releases powerful and intangible profits for the upcoming age of Blockful, Defi, and the entire ecosystem.
The solution came with the struggle to buy different assets in different chains. For example, buying an NFT in Ethereum without tokens in ethereum mainnet, I would need to bridge tokens from another chain to Ethereum, this means risks in the bridge system, delays for at least 5 to 10 minutes to bridge assets, and need to do one more transaction in Ethereum network to buy the asset. It´s cumbersome, slow, risky and costly.
What it does
Swaplace uses CCIP to communicate between chains and asset standards. It allows users to select NFT for NFT, NFT for ERC, or ERC for ERC transactions. This means I can buy an NFT on Ethereum using my money storage in Arbitrum, for example, or trade between NFTs in different chains. or even swap currencies in different chains.
This unlocks way more liquidity in the market and it allows users to pass a barrier of chains, fasten the transactions on the market.
How we built it
Swaplace was built using Next.js + Tailwind for the front end, Alchemy for NFT indexing and RPC, Hardhat for the smart contract test suite, and CCIP for cross-chain communication.
Challenges we ran into
- Preparing all the test environments for testing CCIP.
- Understanding details about CCIP, like being able to call itself, like the Ping Pong example.
- Faucets for testing contracts and operations.
- Full integration between front, smart contracts and back-end
Accomplishments that we're proud of
- ENS integration and nice UX to search NFTs across different chains.
- built working smart contracts
- Successfully integration with Alchemy API
What we learned
- CCIP architecture
- Alchemy NFT API
- Integration with ENS
What's next for Swaplace
Swaplace next steps:
- Deploy in different chains
- Integrate full functionality and improvements for swaps ERC-20 and ERC-721 standards, allowing transactions seamless between ERC20 for ERC721, ERC20 for ERC20 or ERC721 for ERC721.
- Allow multiple token selection
- Create an Offer list for easily accepting swaps using the attributes from CCIP
- Allowing ERC1165 standard for trading cross-chain swaps.
- Build chat functionality, for users to chat while swapping assets
- Build on-chain analytics for data and activity analysis
- Improve Design and UX
Built With
- alchemyapi
- ccip
- etherjs
- hardhat
- javascript
- next.js
- react
- solidity
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.