CypherpunkPay / CypherpunkPay

Modern self-hosted software for accepting Bitcoin.

Home Page:https://cypherpunkpay.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CypherpunkPay

CypherpunkPay is a modern self-hosted software for accepting Bitcoin donations or Bitcoin payments as a merchant.

Being a single, self-contained Linux daemon, it is uniquely easy to install, with no dependencies, near-zero configuration and low hardware requirements.

See the official website (Tor onion).

Docs for donations and merchants

All docs are available on the official website (Tor onion).

Docs for contributors

Prerequisites for development

  • Linux
  • Python 3.9

Developer setup

After cloning this repo, review and run:

bin/dev-setup

This will update pip, install poetry and then use poetry to install dependencies.

Running app in dev env

To run the app in development environment, start the server:

bin/dev-server

...then go to http://127.0.0.1:6543/

Admin panel: http://127.0.0.1:6543/cypherpunkpay/admin/eeec6kyl2rqhys72b6encxxrte/

Dummy store: http://127.0.0.1:6543/cypherpunkpay/dummystore/

Running tests

To run just the unit tests:

bin/test-unit

The database for tests is separate from development and gets reset on each test run.

To run the full test suite you need on your development laptop:

  • testnet bitcoind running
    • unpruned
    • synced-up
    • with default settings
    • with ZMQ notifications enabled for LND:
      zmqpubrawblock=tcp://127.0.0.1:28332
      zmqpubrawtx=tcp://127.0.0.1:28333
      
  • testnet lnd running
    • connected and synced-up against your bitcoind
    • TODO: this probably needs more guidance

Then:

bin/test

Resetting dev database

Just remove database file:

rm /tmp/cypherpunkpay_dev.sqlite3

Public domain

CypherpunkPay is "dual-licensed" under Unlicense OR MIT. The Unlicense attempts to explicitly put CypherpunkPay in the public domain, while MIT is an alternative or fallback if you need it for legal reasons.

SPDX-License-Identifier: Unlicense OR MIT

About

Modern self-hosted software for accepting Bitcoin.

https://cypherpunkpay.org

License:MIT License


Languages

Language:Python 88.2%Language:Jinja 10.2%Language:Shell 0.7%Language:CSS 0.6%Language:JavaScript 0.3%