From 857511b1bd391a46465ff51cdfc34c6dababcabc Mon Sep 17 00:00:00 2001 From: Marnix <93143998+MarnixCroes@users.noreply.github.com> Date: Mon, 16 Sep 2024 16:55:27 +0200 Subject: [PATCH 1/5] create Backend and Coordinator docs --- README.md | 2 ++ docs/.vuepress/config.ts | 13 +++++++++++++ docs/Backend&Coordinator/Backend.md | 8 ++++++++ docs/Backend&Coordinator/Coordinator.md | 8 ++++++++ docs/Backend&Coordinator/README.md | 25 +++++++++++++++++++++++++ 5 files changed, 56 insertions(+) create mode 100644 docs/Backend&Coordinator/Backend.md create mode 100644 docs/Backend&Coordinator/Coordinator.md create mode 100644 docs/Backend&Coordinator/README.md diff --git a/README.md b/README.md index c40c6e99a8..f4e707c9ec 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,8 @@ If you need help regarding the software specifically, please check out [Discussi * How to contribute to Wasabi. * ## [Wasabi FAQ](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/FAQ/) * Frequently asked questions. + * ## [Backend & Coordinator](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/backend&coordinator/) + * Explanations of common words. * ## [Wasabi Glossary](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/glossary/) * Explanations of common words. diff --git a/docs/.vuepress/config.ts b/docs/.vuepress/config.ts index 44c362763b..573d534cb4 100644 --- a/docs/.vuepress/config.ts +++ b/docs/.vuepress/config.ts @@ -102,6 +102,9 @@ export default defineUserConfig({ }, { text: "FAQ", link: "/FAQ/" + }, { + text: "Backend & Coordinator", + link: "/backend&coordinator/" }, { text: "Glossary", link: "/glossary/" @@ -226,6 +229,16 @@ export default defineUserConfig({ ] }], + "/Backend&Coordinator/": [{ + text: "Backend and Coordinator", + collapsable: false, + sidebarDepth: 2, + children: [ + "/Backend&Coordinator/Backend.md", + "/Backend&Coordinator/Coordinator.md" + ] + }], + "/glossary/": [{ text: "Glossary", collapsable: false, diff --git a/docs/Backend&Coordinator/Backend.md b/docs/Backend&Coordinator/Backend.md new file mode 100644 index 0000000000..18303ace59 --- /dev/null +++ b/docs/Backend&Coordinator/Backend.md @@ -0,0 +1,8 @@ +--- +{ + "title": "Backend", + "description": "Insert description" +} +--- + +# Backend \ No newline at end of file diff --git a/docs/Backend&Coordinator/Coordinator.md b/docs/Backend&Coordinator/Coordinator.md new file mode 100644 index 0000000000..6fb949fc2c --- /dev/null +++ b/docs/Backend&Coordinator/Coordinator.md @@ -0,0 +1,8 @@ +--- +{ + "title": "Coordinator", + "description": "Insert description" +} +--- + +# Coordinator \ No newline at end of file diff --git a/docs/Backend&Coordinator/README.md b/docs/Backend&Coordinator/README.md new file mode 100644 index 0000000000..835a21ed93 --- /dev/null +++ b/docs/Backend&Coordinator/README.md @@ -0,0 +1,25 @@ +--- +{ + "title": "Backend & Coordinator", + "description": "All the information for those Wasabikas interested in helping Wasabi Wallet users by running a backend and/or a coordinator. This is the Wasabi documentation, an archive of knowledge about the open-source, non-custodial and privacy-focused Bitcoin wallet for desktop." +} +--- + +# Backend & Coordinator + +This is the place with documentation about how a Wasabi backend and coordinator work and how they can be run. + +A backend is necessary for Wasabi users to synchronize their wallet. + +A coordinator is necessary for Wasabi users to be able to coinjoin. + +## Chapters + +### Backend + +- [Backend](/Backend&Coordinator/Backend.md) + +### Coordinator + +- [Coordinator](/Backend&Coordinator/Coordinator.md) + From 90a4dcbc143ca7a7a8c5a04bdafa2316e87baea1 Mon Sep 17 00:00:00 2001 From: Marnix <93143998+MarnixCroes@users.noreply.github.com> Date: Mon, 16 Sep 2024 16:55:27 +0200 Subject: [PATCH 2/5] create Backend and Coordinator docs --- README.md | 2 ++ docs/.vuepress/config.ts | 13 +++++++++++++ docs/backend-coordinator/Coordinator.md | 8 ++++++++ docs/backend-coordinator/README.md | 25 +++++++++++++++++++++++++ 4 files changed, 48 insertions(+) create mode 100644 docs/backend-coordinator/Coordinator.md create mode 100644 docs/backend-coordinator/README.md diff --git a/README.md b/README.md index c40c6e99a8..9bab4a06f3 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,8 @@ If you need help regarding the software specifically, please check out [Discussi * How to contribute to Wasabi. * ## [Wasabi FAQ](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/FAQ/) * Frequently asked questions. + * ## [Backend & Coordinator](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/backend-coordinator/) + * Explanations of common words. * ## [Wasabi Glossary](https://github.com/WalletWasabi/WasabiDoc/tree/master/docs/glossary/) * Explanations of common words. diff --git a/docs/.vuepress/config.ts b/docs/.vuepress/config.ts index 44c362763b..1ce7fa3bb8 100644 --- a/docs/.vuepress/config.ts +++ b/docs/.vuepress/config.ts @@ -102,6 +102,9 @@ export default defineUserConfig({ }, { text: "FAQ", link: "/FAQ/" + }, { + text: "Backend & Coordinator", + link: "/backend-coordinator/" }, { text: "Glossary", link: "/glossary/" @@ -226,6 +229,16 @@ export default defineUserConfig({ ] }], + "/backend-coordinator/": [{ + text: "Backend and Coordinator", + collapsable: false, + sidebarDepth: 2, + children: [ + "/backend-coordinator/Backend.md", + "/backend-coordinator/Coordinator.md" + ] + }], + "/glossary/": [{ text: "Glossary", collapsable: false, diff --git a/docs/backend-coordinator/Coordinator.md b/docs/backend-coordinator/Coordinator.md new file mode 100644 index 0000000000..6fb949fc2c --- /dev/null +++ b/docs/backend-coordinator/Coordinator.md @@ -0,0 +1,8 @@ +--- +{ + "title": "Coordinator", + "description": "Insert description" +} +--- + +# Coordinator \ No newline at end of file diff --git a/docs/backend-coordinator/README.md b/docs/backend-coordinator/README.md new file mode 100644 index 0000000000..276e80c215 --- /dev/null +++ b/docs/backend-coordinator/README.md @@ -0,0 +1,25 @@ +--- +{ + "title": "Backend & Coordinator", + "description": "All the information for those Wasabikas interested in helping Wasabi Wallet users by running a backend and/or a coordinator. This is the Wasabi documentation, an archive of knowledge about the open-source, non-custodial and privacy-focused Bitcoin wallet for desktop." +} +--- + +# Backend & Coordinator + +This is the place with documentation about how a Wasabi backend and coordinator work and how they can be run. + +A backend is necessary for Wasabi users to synchronize their wallet. + +A coordinator is necessary for Wasabi users to be able to coinjoin. + +## Chapters + +### Backend + +- [Backend](/backend-coordinator/Backend.md) + +### Coordinator + +- [Coordinator](/backend-coordinator/Coordinator.md) + From 8db7991f4d0c1b96a11b0e1e28577dbb8ff9f2b9 Mon Sep 17 00:00:00 2001 From: Marnix Croes <93143998+MarnixCroes@users.noreply.github.com> Date: Mon, 6 Jan 2025 17:18:22 -0300 Subject: [PATCH 3/5] Create Backend docs --- docs/backend-coordinator/Backend.md | 72 +++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/backend-coordinator/Backend.md diff --git a/docs/backend-coordinator/Backend.md b/docs/backend-coordinator/Backend.md new file mode 100644 index 0000000000..a86edc402b --- /dev/null +++ b/docs/backend-coordinator/Backend.md @@ -0,0 +1,72 @@ +--- +{ + "title": "Backend", + "description": "Insert description" +} +--- + +# Backend + +[[toc]] + + +The Wasabi backend creates and serves the block filters to the Wasabi clients that use these to synchronize their wallet. + +The filters Wasabi uses are custom filters (not the same block filters bitcoind creates), as they are native segwit v0 and native segwit v1 only. + +The bitcoin node, used for the backend, can be pruned. + +## How to run a Backend + +- Dependencies: +Same (dotnet) dependencies as the Wasabi client + bitcoind (can be Bitcoin Core or Knots). + +### Manually + +A backend can be run in the following way: + +- Clone the Wasabi repository + +``` +git clone --depth=1 --single-branch --branch=master https://github.com/WalletWasabi/WalletWasabi.git +``` + +- Navigate to the Backend directory + +``` +cd WalletWasabi/WalletWasabi.Backend +``` + +Start +- Run the Backend to create the backend data directory +``` +dotnet run +``` + +The data directory is now created in ~/.walletwasabi/backend. + +The config needs to be edited for the Wasabi backend to communicate to bitcoind. + +Edit the following line in the backend `Config.json` file: +``` +"BitcoinRpcConnectionString": "user:password", +``` + +Enter the bitcoin RPC username and password. +Or specify the cookie file. + +Save the changes. +Now run bitcoind and the Wasabi backend. +It will start generating the filters. + +### Using nix + +The backend can be run using nix. +This will download and install all Wasabi dependencies (not bitcoind). + +Nix needs to be installed, then execute `nix build` in the WalletWasabi root directory. + +Alternatively `nix build .#all` can be run, which will build and run the tests. + +After running nix build a directory is created called `result`, this contains: bin, lib, deploy. +bin contains executables, inlcuding WalletWasabi.Backend and should be run to start the backend. From 0726a873b30b6901742d6ff44c5a8ff5b27f44bb Mon Sep 17 00:00:00 2001 From: Marnix Croes <93143998+MarnixCroes@users.noreply.github.com> Date: Mon, 6 Jan 2025 17:23:06 -0300 Subject: [PATCH 4/5] Revert "Merge branch 'backend' of https://github.com/MarnixCroes/WasabiDoc into backend" This reverts commit 331725c919336e5e1b3cb0a7de4c9c6fc7f90ec3, reversing changes made to 8db7991f4d0c1b96a11b0e1e28577dbb8ff9f2b9. --- docs/Backend&Coordinator/Backend.md | 8 -------- docs/Backend&Coordinator/Coordinator.md | 8 -------- docs/Backend&Coordinator/README.md | 25 ------------------------- 3 files changed, 41 deletions(-) delete mode 100644 docs/Backend&Coordinator/Backend.md delete mode 100644 docs/Backend&Coordinator/Coordinator.md delete mode 100644 docs/Backend&Coordinator/README.md diff --git a/docs/Backend&Coordinator/Backend.md b/docs/Backend&Coordinator/Backend.md deleted file mode 100644 index 18303ace59..0000000000 --- a/docs/Backend&Coordinator/Backend.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -{ - "title": "Backend", - "description": "Insert description" -} ---- - -# Backend \ No newline at end of file diff --git a/docs/Backend&Coordinator/Coordinator.md b/docs/Backend&Coordinator/Coordinator.md deleted file mode 100644 index 6fb949fc2c..0000000000 --- a/docs/Backend&Coordinator/Coordinator.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -{ - "title": "Coordinator", - "description": "Insert description" -} ---- - -# Coordinator \ No newline at end of file diff --git a/docs/Backend&Coordinator/README.md b/docs/Backend&Coordinator/README.md deleted file mode 100644 index 835a21ed93..0000000000 --- a/docs/Backend&Coordinator/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -{ - "title": "Backend & Coordinator", - "description": "All the information for those Wasabikas interested in helping Wasabi Wallet users by running a backend and/or a coordinator. This is the Wasabi documentation, an archive of knowledge about the open-source, non-custodial and privacy-focused Bitcoin wallet for desktop." -} ---- - -# Backend & Coordinator - -This is the place with documentation about how a Wasabi backend and coordinator work and how they can be run. - -A backend is necessary for Wasabi users to synchronize their wallet. - -A coordinator is necessary for Wasabi users to be able to coinjoin. - -## Chapters - -### Backend - -- [Backend](/Backend&Coordinator/Backend.md) - -### Coordinator - -- [Coordinator](/Backend&Coordinator/Coordinator.md) - From 2bf6e4efaecca187244d90cb1c4c1aa581548093 Mon Sep 17 00:00:00 2001 From: Marnix Croes <93143998+MarnixCroes@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:02:13 -0300 Subject: [PATCH 5/5] add missing backend description --- docs/backend-coordinator/Backend.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/backend-coordinator/Backend.md b/docs/backend-coordinator/Backend.md index a86edc402b..293dd2ab46 100644 --- a/docs/backend-coordinator/Backend.md +++ b/docs/backend-coordinator/Backend.md @@ -1,7 +1,7 @@ --- { "title": "Backend", - "description": "Insert description" + "description": "Documentation about the Wasabi backend and how to use it.This is the Wasabi documentation, an archive of knowledge about the open-source, non-custodial and privacy-focused Bitcoin wallet for desktop." } ---