Coffee Block was born out of our passion for crypto and coffee! We wanted to create a project that allows crypto coffee lovers to support small scale farms and producers. This is a proof of concept dapp.
Enables crypto users to support local coffee farmers anywhere in the world. This results in immediate support, interactivity and community building. With transparency and accountability throughout the donation process, supporters can track their contributions and monitor their impact in real time. Bridging crypto coffee lovers with small coffee producers.
Coffee Block was built using a combination of blockchain technology, smart contracts and a user-friendly web interface. We utilized Chainlink's CCIP to ensure secure and efficient cross-chain transactions. The frontend was developed using React, while the backend services were implemented with Node.js and Express.
One of the major challenges we encountered was ensuring the interoperability of different blockchain networks. Writing and testing smart contracts locally was difficult, especially with three contracts involved in a single transaction. We experienced failures and reverted transactions. While we successfully transferred USDC to another chain, we faced issues engaging with the receiver contract and the controller contract. However, we managed to pull it off but not as first imagined.
As blockchain development students this was our first hackathon. We had to read up on CCIP and thanks to the Chainlink bootcamps done in January and April we had a basic enough understanding to pursue with the project. So this is what we gained more skills on form the hackathon:
- Smart Contracts + Solidity
- Frontend connection with the backend using multiple contracts + CCIP
- Learn about CCIP
We would like to improve this project further and are open for suggestions and discussions. Here's our Coffee Block Telegram group.
- 'npm i' (on both backend & frontend)
- 'npm run start' in backend folder
- 'npm run dev' in frontend folder
- Connect to Polygon Amoy
- Use Sepolia for Sender-Funding