{"id":19219375,"url":"https://github.com/bwt-dev/bwt-electrum-plugin","last_synced_at":"2025-05-13T00:42:48.926Z","repository":{"id":117492562,"uuid":"325466468","full_name":"bwt-dev/bwt-electrum-plugin","owner":"bwt-dev","description":"Electrum plugin for Bitcoin Wallet Tracker, a lightweight personal indexer for bitcoin wallets. Allows connecting Electrum to a Bitcoin Core full node backend.","archived":false,"fork":false,"pushed_at":"2021-11-10T12:25:22.000Z","size":381,"stargazers_count":21,"open_issues_count":3,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-01T05:11:44.451Z","etag":null,"topics":["bitcoin-wallet-tracker","bwt","electrum","electrum-plugin"],"latest_commit_sha":null,"homepage":"https://bwt.dev","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bwt-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-30T05:48:26.000Z","updated_at":"2025-03-28T12:36:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"5da63809-4c10-4e0e-a63c-c76769ad44eb","html_url":"https://github.com/bwt-dev/bwt-electrum-plugin","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bwt-dev%2Fbwt-electrum-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bwt-dev%2Fbwt-electrum-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bwt-dev%2Fbwt-electrum-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bwt-dev%2Fbwt-electrum-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bwt-dev","download_url":"https://codeload.github.com/bwt-dev/bwt-electrum-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249965566,"owners_count":21352926,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitcoin-wallet-tracker","bwt","electrum","electrum-plugin"],"created_at":"2024-11-09T14:30:58.605Z","updated_at":"2025-04-20T21:33:29.355Z","avatar_url":"https://github.com/bwt-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bitcoin Wallet Tracker - Electrum Plugin\n\n[![Build Status](https://travis-ci.org/bwt-dev/bwt-electrum-plugin.svg?branch=master)](https://travis-ci.org/bwt-dev/bwt-electrum-plugin)\n[![Latest release](https://img.shields.io/github/v/release/bwt-dev/bwt-electrum-plugin?color=orange)](https://github.com/bwt-dev/bwt-electrum-plugin/releases/tag/v0.2.4)\n[![Downloads](https://img.shields.io/github/downloads/bwt-dev/bwt/total.svg?color=blueviolet)](https://github.com/bwt-dev/bwt-electrum-plugin/releases)\n[![MIT license](https://img.shields.io/github/license/bwt-dev/bwt-electrum-plugin.svg?color=yellow)](https://github.com/bwt-dev/bwt-electrum-plugin/blob/master/LICENSE)\n[![Pull Requests Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/bwt-dev/bwt#developing)\n\n\u003c!-- TODO: change downloads counter back from main repo --\u003e\n\nElectrum plugin for [Bitcoin Wallet Tracker](https://github.com/bwt-dev/bwt), a lightweight personal indexer for bitcoin wallets.\n\nThe plugin allows connecting Electrum to a Bitcoin Core full node backend, by running\nan embedded bwt Electrum server within the Electrum wallet itself.\n\nSupport development: [⛓️ on-chain or ⚡ lightning via BTCPay](https://btcpay.shesek.info/)\n\n![Screenshot of bwt integrated into Electrum](https://raw.githubusercontent.com/bwt-dev/bwt-electrum-plugin/master/doc/electrum-plugin.png)\n\n- [Compatibility](#compatibility)\n- [Installation](#installation)\n  - [With the Electrum AppImage](#with-the-electrum-appimage)\n  - [Verifying the signature](#verifying-the-signature)\n- [Welcome banner](#welcome-banner)\n- [Building from source](#building-from-source)\n- [Reproducible builds](#reproducible-builds)\n- [License](#license)\n\n## Compatibility\n\nThe plugin supports Electrum v3 and v4. It is available for Linux, Mac, Windows and ARMv7/v8. It works with multi-signature wallets. It *does not* support Lightning.\n\nBitcoin Core v0.19+ is recommended, but it can work (not as well) with v0.17+. `txindex` is not required.\nPruning is supported, but you can only scan for transactions in the non-pruned history.\n\nThe plugin can be used with the Electrum AppImage (see special instructions below), Linux package manager installations,\nthe Windows installer, the `tar.gz` package, or from source.\nIt cannot be used with the standalone Windows executable.\n\nThe plugin currently *supports watch-only wallets only* and [*cannot be used with hot wallets*](https://twitter.com/shesek/status/1275057901149667329). This is expected to eventually change.\nFor now, you can use the plugin with hardware wallets or with an offline Electrum setup.\nFor hot wallets, you will need to [setup a standalone server](https://github.com/bwt-dev/bwt#setting-up-bwt)\ninstead of using the plugin.\n\n## Installation\n\n1. Install and sync Bitcoin Core. If you're using QT, set `server=1` in your `bitcoin.conf` file.\n\n   \u003e It is recommended, but not required, to create a separate bitcoind wallet with `createwallet \u003cname\u003e true true`.\n\n2. Download the bwt plugin from the [releases page](https://github.com/bwt-dev/bwt-electrum-plugin/releases),\n   verify the signature (see below) and unpack the `bwt` directory into your `electrum/plugins` directory.\n\n   \u003e You can find the location of your plugins directory by running `electrum.plugins.__path__` in the Electrum console tab.\n\n3. Restart Electrum, open `Tools -\u003e Plugins`, enable `bwt`, click `Connect to bitcoind`, configure your Bitcoin Core RPC details, and click `Save \u0026 Connect`. That's it!\n\nOn the first run, rescanning for historical transactions from genesis may take up to 2-3 hours. To speed this up, set the rescan date to when\nthe wallet was created (or disable rescanning entirely for new wallets). If your node is pruned, the rescan date has to be within\nthe range of non-pruned blocks.\n\nThe plugin automatically configures Electrum with `oneserver` (to avoid connecting to public servers) and `skipmerklecheck` (necessary for [pruning](https://github.com/bwt-dev/bwt#pruning)).\nTo avoid connecting to public servers while setting up the plugin, make sure the \"auto connect\" feature is disabled or run Electrum with `--offline` until everything is ready.\n\n#### With the Electrum AppImage\n\nIf you're using the Electrum AppImage, you will have to extract it to a directory first and copy the bwt plugin directory into it.\nThis can be done as follows:\n\n```bash\n# Extract AppImage (to a subdirectory named 'squashfs-root')\n$ ./electrum-x.y.z-x86_64.AppImage --appimage-extract\n\n# Copy the bwt plugin directory\n$ cp -r /path/to/bwt squashfs-root/usr/lib/python3.7/site-packages/electrum/plugins/\n\n# Start Electrum\n$ ./squashfs-root/AppRun\n```\n\nOr using the `run-appimage.sh` utility script available within the plugin directory (which does the same):\n\n```bash\n# Extract the AppImage, copy bwt and start Electrum\n$ ./bwt/run-appimage.sh ./electrum-x.y.z-x86_64.AppImage\n\n# Can also forward arguments\n$ ./bwt/run-appimage.sh ./electrum-x.y.z-x86_64.AppImage --offline\n```\n\n#### Verifying the signature\n\nThe releases are signed by Nadav Ivgi (@shesek).\nThe public key can be verified on\nthe [PGP WoT](http://keys.gnupg.net/pks/lookup?op=vindex\u0026fingerprint=on\u0026search=0x81F6104CD0F150FC),\n[github](https://api.github.com/users/shesek/gpg_keys),\n[twitter](https://twitter.com/shesek),\n[keybase](https://keybase.io/nadav),\n[hacker news](https://news.ycombinator.com/user?id=nadaviv)\nand [this video presentation](https://youtu.be/SXJaN2T3M10?t=4).\n\n\n```bash\n# Download plugin (change x86_64-linux to your platform)\n$ wget https://github.com/bwt-dev/bwt-electrum-plugin/releases/download/v0.2.4/bwt-electrum-plugin-0.2.4-x86_64-linux.tar.gz\n\n# Fetch public key\n$ gpg --keyserver keyserver.ubuntu.com --recv-keys FCF19B67866562F08A43AAD681F6104CD0F150FC\n\n# Verify signature\n$ wget -qO - https://github.com/bwt-dev/bwt-electrum-plugin/releases/download/v0.2.4/SHA256SUMS.asc \\\n  | gpg --decrypt - | grep x86_64-linux | sha256sum -c -\n```\n\nThe signature verification should show `Good signature from \"Nadav Ivgi \u003cnadav@shesek.info\u003e\" ... Primary key fingerprint: FCF1 9B67 ...` and `bwt-electrum-plugin-0.2.4-x86_64-linux.tar.gz: OK`.\n\n## Welcome banner\n\nThe bwt Electrum server provides a welcome banner with information about your node and the Bitcoin network.\nYou can view it by opening the Console tab.\n\n![Screenshot of the bwt welcome banner](https://raw.githubusercontent.com/bwt-dev/bwt-electrum-plugin/master/doc/electrum-banner.png)\n\n## Building from source\n\nTo build the plugin from source, first build the `bwt` binary (as also [described here](https://github.com/bwt-dev/bwt#from-source)),\ncopy it into the `src` directory in this repo, then copy that directory into `electrum/plugins`, *but renamed to `bwt`* (Electrum won't recognize it otherwise).\n\n```bash\n$ git clone https://github.com/bwt-dev/bwt-electrum-plugin \u0026\u0026 cd bwt-electrum-plugin\n$ git checkout \u003ctag\u003e\n$ git verify-commit HEAD\n$ git submodule update --init\n\n$ cd bwt\n$ cargo build --release --no-default-features --features cli,electrum\n$ cd ..\n$ cp bwt/target/release/bwt src/\n$ cp -r src /usr/local/lib/python3.8/site-packages/electrum/plugins/bwt\n```\n\n## Reproducible builds\n\nThe builds for all supported platforms can be reproduced in a Docker container environment as follows:\n\n```bash\n$ git clone https://github.com/bwt-dev/bwt-electrum-plugin \u0026\u0026 cd bwt-electrum-plugin\n$ git checkout \u003ctag\u003e\n$ git verify-commit HEAD\n$ git submodule update --init\n\n# Linux, Windows, ARMv7 and ARMv8\n$ docker build -t bwt-builder - \u003c bwt/scripts/builder.Dockerfile\n$ docker run -it --rm -u `id -u` -v `pwd`:/usr/src/bwt-electrum-plugin -w /usr/src/bwt-electrum-plugin \\\n  --entrypoint scripts/build.sh bwt-builder\n\n# Mac OSX (cross-compiled via osxcross)\n$ docker build -t bwt-builder-osx - \u003c bwt/scripts/builder-osx.Dockerfile\n$ docker run -it --rm -u `id -u` -v `pwd`:/usr/src/bwt-electrum-plugin -w /usr/src/bwt-electrum-plugin \\\n  --entrypoint scripts/build.sh bwt-builder-osx\n\n$ sha256sum dist/*\n```\n\nThe builds are [reproduced on Travis CI](https://travis-ci.org/github/bwt-dev/bwt-electrum-plugin/branches) using the code from GitHub.\nThe SHA256 checksums are available under the \"Reproducible builds\" stage.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbwt-dev%2Fbwt-electrum-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbwt-dev%2Fbwt-electrum-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbwt-dev%2Fbwt-electrum-plugin/lists"}