/coracle

A Nostr client that makes relays a first-class concept

Primary LanguageSvelteMIT LicenseMIT

What is this?

Coracle is a web client for the Nostr protocol. While Nostr is useful for many things, Coracle focuses on providing a high-quality social media experience. Check it out at coracle.social.

Dufflepud is a companion server which you can self-host. It helps Coracle with things like link previews and image uploads.

If you like Coracle and want to support its development, you can donate sats via Geyser.

Features

  • Threads/social
  • Profile search using NIP-50
  • Login via extension
  • Profile sharing via QR codes
  • NIP 05 verification
  • Bech32 entity search
  • Notifications
  • Chat and direct messages
  • Note composition with mentions and topics
  • Profile pages, follow/unfollow
  • Thread and person muting, collapse thread
  • Smart relay selection and display
  • Invoice, quote, mention, link, image, and video rendering
  • Installable as a progressive web app
  • Integrated media uploads
  • Lightning zaps
  • Feeds customizable by person, relay, and topic using NIP-51
  • AUTH (NIP-42) support for paid relays
  • Multiplextr support for reducing bandwidth
  • Profile and note metadata
  • White-labeling support
  • Exportable copy of all user events
  • Reporting and basic distributed moderation
  • Content and person recommendations

You can find a more complete changelog here.

Run Coracle locally:

  • Clone the project repository: git clone https://github.com/coracle-social/coracle.git
  • Navitage to the project directory: cd coracle
  • Install dependencies: npm install
  • Add an env file from the template: cp env.template env.local
  • Start the development server: npm run dev