Inspiration
Coinnect was developed to address the challenges posed by lethargy in cross-border payments. International payments are often cumbersome among users and businesses due to lethargy, cost, and unforeseen complications.
Our team comprises Indian immigrants, whose parents often send remittances back to India. A trustless and globally-accessible solution for cross-border payments would allow our grandparents to receive and use funds sooner.
What it does
Coinnect is a global payment app that uses cryptocurrencies as its primary mode of transaction. Similar to traditional payment applications, it allows users to send and receive money from anywhere in the world with ease. The app is designed to be user-friendly and reliable, making it an excellent choice for individuals and businesses alike.
Users can log in via cryptocurrency wallets, obtain usernames, and initiate requests (invoices) for sending and receiving cryptocurrencies. Upon doing so, requests can be fulfilled via blockchain-native currencies (ETH, MATIC, AVAX, etc. depending on where the contract is deployed).
How we built it
Coinnect's front-end was built using a combination of HTML, CSS, and JavaScript. The design was heavily influenced by the popular "Web3 UI" look, which is characterized by light colors, rounded corners, and a minimalist aesthetic. To achieve this look, we utilized the Tailwind CSS framework, which provides a comprehensive set of pre-defined CSS styles that can be easily customized to match the desired design. React was utilized to bring everything together: the result is a sleek and modern user interface that is both intuitive and aesthetically pleasing. Lastly, ethers.js connected our front-and back-ends.
The smart contract back-end was built using Solidity, the programming language for the Ethereum Virtual Machine (EVM). We used Solidity to create smart contracts that define the rules and logic of the platform, including the commission rate and sending/receiving cryptocurrencies. To test and deploy these smart contracts, we utilized the Hardhat development environment, which provides a comprehensive suite of tools and libraries for Solidity development. In addition, we used JavaScript for scripting and testing Solidity code, as well as for interacting with the Ethereum network through ethers.js.
Challenges we ran into
- JavaScript testing: we used Hardhat instead of Truffle, which caused testing and scripting to be in JavaScript.
- Connecting front- and back-end
- Time constraint: we lost a day due to exams
Accomplishments that we're proud of
- Connecting front- and back-end
- ERC-4337 research
- UI
What we learned
- Moralis API
- ERC-4337 benefits
- ethers.js
- React
What's next for Coinnect
- ERC-4337 integration: the standard enables what’s called “account abstraction,” allowing wallets to operate as programmable smart contracts. The feature allows users to program wallet recovery options as a precaution protecting them against losing access to their private keys in the future.
- ERC-20 integration: sending and receiving payments in non-native cryptocurrency tokens (i.e. stablecoins)
- Chain agnosticism: a multi-chain world is a better world.
- Mobile application
- QR code/NFC-based payment: mobile payments are king.
Built With
- css
- hardhat
- html
- javascript
- solidity
Log in or sign up for Devpost to join the conversation.