BridgePay
BridgePay is a decentralized finance (DeFi) application designed to facilitate secure, fast, and offline-ready digital transactions. Built using modern technologies like Kotlin, Node.js, and the Celo blockchain, BridgePay allows users to perform peer-to-peer transactions seamlessly—even without an active internet connection.
- Project Overview
- Features
- Tech Stack
- Architecture
- Offline Transaction Workflow
- Installation & Setup
- Usage
- Future Improvements
- Contributors
- License
BridgePay is a next-generation DeFi application designed to provide seamless fund transfers and transaction management with offline support. It integrates blockchain technology to ensure secure, transparent, and immutable transactions. Users can send, receive, and track funds directly through the application while maintaining complete control over their digital assets.
The project combines:
- A mobile frontend built in Kotlin.
- A backend server using Node.js and JavaScript.
- A Celo blockchain integration enabling offline transactions and eventual synchronization once network connectivity is restored.
- Peer-to-peer fund transfers using Celo addresses.
- Offline transaction support with automatic syncing once the network is available.
- Secure and decentralized ledger using Celo blockchain.
- Local server for quick API access and testing.
- Real-time balance updates and transaction verification.
| Layer | Technology |
|---|---|
| Frontend | Kotlin (Android App) |
| Backend | Node.js, JavaScript |
| Blockchain | Celo Blockchain |
| API Integration | Retrofit (Kotlin) |
| Offline Support | Local JSON files + Node.js API |
| Version Control | Git / GitHub |
+-------------------+ +-----------------+ +------------------+ | Kotlin App | <----> | Node.js Server | <----> | Celo Blockchain | | (Retrofit API) | | (REST APIs) | | Offline Support | +-------------------+ +-----------------+ +------------------+ | | | v v v Local JSON storage Transaction management Blockchain ledger for offline syncing & API responses for immutable records
- Initiate Transaction: User sends funds to another user even without internet.
- Local Storage: Transaction is temporarily stored in a local JSON file on the device.
- Sync to Blockchain: When internet connectivity is restored, the local transactions are automatically synced with the Celo blockchain.
- Confirmation: Blockchain validates the transactions, ensuring security, transparency, and immutability.
This ensures seamless user experience in areas with intermittent internet connectivity.
Prerequisites:
- Node.js v18+
- NPM or Yarn
- Android Studio (for Kotlin app)
- Celo Wallet / CLI
Backend Setup:
npm install
node index.js
Android App Setup:
- Open the Kotlin project in Android Studio.
- Update the API base URL to point to your local Node.js server.
- Run the application on an emulator or device.
Celo Blockchain:
- Ensure Celo testnet or mainnet is configured in the app.
- Transactions will automatically sync with blockchain when connected.
- Open the BridgePay app.
- Create or connect your Celo wallet address.
- Send or receive funds using Celo addresses.
- Perform offline transactions that will automatically sync once network connectivity is restored.
- Integrate token-based transactions alongside native Celo transfers.
- Enhanced UI/UX for smoother transaction handling.
- Multi-currency support with real-time conversion rates.
- Advanced analytics for transaction history and spending patterns.
- Secure authentication (e.g., biometric login) and multi-signature wallets.
– Rudranil Mallick – Chiranjeev Sharma – Saayon Sau