Skip to content

berasumitdev/CardanoPay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CardanoPay

A proof of concept “remote-sign on desktop” bridge so a mobile dApp can charge even though CIP-30 wallets live in the browser.

Motivation & Challenges in the Cardano Ecosystem

Developing decentralized applications (dApps) in the Cardano ecosystem often faces friction due to wallet availability and integration. Unlike Ethereum, which has a rich mobile wallet SDK ecosystem, Cardano primarily exposes wallets via CIP-30 browser extensions (Nami, Eternl, Lace, etc.).

This creates a few big problems for developers and users:

  1. No native mobile support On mobile, there’s no window.cardano context. That means a React Native or Expo app cannot directly integrate with wallets. Users are forced to switch to a desktop browser to complete transactions.

  2. Broken UX for payments If a mobile app needs to accept ADA payments, the user has to leave the app and manually handle the payment in a separate wallet UI. This is confusing and leads to drop-offs.

  3. Lack of real-time payment tracking Current dApps often don’t provide a smooth, real-time update experience for payments. A user clicks “Pay”, but doesn’t see immediate state changes like submitted → confirmed unless they refresh.

  4. Developer fragmentation Developers end up re-implementing wallet logic, QR flows, or ad-hoc APIs just to bridge mobile ↔ desktop. This wastes time and makes solutions brittle.


Why This Project Exists

CardanoPay was built as a Proof of Concept (PoC) to solve these issues and improve developer & user experience:

  • Mobile-first payment intents The Expo mobile app allows users to generate a “payment intent” (with ADA amount + metadata) without needing direct wallet access.

  • PIN + desktop bridge flow The mobile app shows a short code (PIN). The user enters this into the web app on desktop, where CIP-30 wallets are available. This pairs the sessions securely.

  • JWT-authenticated desktop sessions A short-lived JWT ensures only the paired desktop can act on behalf of the mobile intent. This makes the bridge safe and traceable.

  • Realtime status updates Socket.io ensures both mobile and web stay in sync: created → paired → awaiting_payment → submitted → confirmed.

  • Backend with persistence Express + MongoDB Atlas persist the payment state so both devices see consistent history.


Developer Value

  • One codebase → multiple channels: Backend (Express + MongoDB), Mobile (Expo React Native), Web (Vite + React).
  • Clear state machine for payments: Developers can extend statuses, add business logic, or integrate Cardano off-chain SDKs.
  • SDK-ready architecture: The modular design means this PoC can evolve into a CardanoPay SDK later.

About

A proof of concept on “remote-sign on desktop” bridge so a mobile dApp can charge even though CIP-30 wallets live in the browser.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors