Skip to content

The Farcaster Project

Open source cross-chain atomic swap specifications and implementation

Welcome to the Farcaster Project

Farcaster is a cross-chain atomic swap protocol and implementation who allows to exchange Bitcoin and Monero in a peer-to-peer manner with anyone running a Farcaster node.

Our implementation is done in Rust 🦀 and uses electrum and monero nodes to interface with the blockchains. The easiest way to get started is to use our 🐋 Docker images, you can have a look how we create them here.

Want to try?

Have a look at the Node wiki to see how to install and run the node. 💡 You can even trade testnet coins on to learn how it works!

If you have Rust and Docker installed on your machine you can run

# run a temporary Monero wallet RPC
docker run --rm -d -p 38083:38083\
    /usr/bin/monero-wallet-rpc --stagenet\
    --disable-rpc-login --wallet-dir wallets\
    --rpc-bind-ip --rpc-bind-port 38083\
# install and launch your node
cargo install farcaster_node

In a new terminal you can now interact with your node through the cli with

swap-cli info
swap-cli take --help

Or check your browser at (First you need to activate grpc in your node config)

You are ready to take a deal!

More resources

If you want to know more about the specifications have a look at the 📜 RFCs and the Core library.

Pinned Loading

  1. farcaster-node farcaster-node Public

    Farcaster cross-chain atomic swap node.

    Rust 99 19

  2. farcaster-gui farcaster-gui Public

    A next.js based React webapp for interacting with Farcaster Node gRPC daemon.

    TypeScript 8

  3. farcaster-core farcaster-core Public

    Farcaster Core Library.

    Rust 37 13

  4. containers containers Public

    Series of containers build for testing and releasing Farcaster dependent services.

    Dockerfile 2 6

  5. RFCs RFCs Public

    Farcaster Specifications guiding core and node designs.

    64 15


Showing 10 of 11 repositories

Top languages


Most used topics