Inspiration

Bitcoin and Nostr solved money and identity, the base layers of our society, but commerce as a second layer is still mostly captured by the State and corporate interest. Local businesses lose up to 40% of their revenues to intermediaries like centralized delivery app (12-30% take rate), banks (4% MDR) and the State (5-15% taxes).

What it does

Kartapio allows merchants to publish their products to Nostr and receive orders and payments from any Nostr client that implements NIP-15.

How we built it

We built it using Typescript/Svelte, the NDK library for Nostr integration, bitcoinConnect for NWC integration and Shadcn as our frontend component library. The project is a static page hosted on Cloudflare.

Challenges we ran into

Mostly related to the project complexity and also updating the application state by applying all past Nostr events.

Accomplishments that we're proud of

We managed to implement the main features to showcase the whole ordering and payment flows.

What we learned

It was the first time some team members built something on Nostr and the first time that everyone used NWC.

What's next for Kartapio

  • Allow customers to create/sign in to their own Nostr accounts in order to write/read reviews and discover new venues based on their web-of-trust.
  • Support stablecoins (especially on Bitcoin) as an alternative payment method for broader adoption
  • Generate product events from a photo of the menu using LLM to make merchant onboarding easier
  • Monetization features like: freemium relays, featured venues, fiat payment processing, integration with delivery partners and premium productivity features.

Built With

  • bitcoinconnect
  • ndk
  • shadcn
  • svelte
Share this project:

Updates