jam
jam copied to clipboard
Import wallet using either seedphrase or .jmdat file
Existing power users should be able to move their wallets to this UI
Does that not work already for you? Wallets created via the CLI should show up in the UI. As the UI is just a frontend for the RPC API there shouldn't be any difference between wallets created via the CLI scripts and the UI.
After importing wallet file across it shows up in the GUI which you can unlock it, but the UTXO's are not showing up. It's a different wallet file in bitcoin core, if i change it to the wallet that I've been using for joinmarket previously in the joinmarket.cfg the balance shows in cli.
Tried using cli command of python wallet-tool.py -g 50 wallet.jmdat, and after that a bitcoin-cli rescanblockchain and then check balance and it still shows as 0 balance.
update - using the rpcwallet file as part of the rescan command, waiting for the scan to finish
/bitcoin-cli -rpcwallet=jam_default rescanblockchain
that worked transactions and wallet balance can be seen.
Just went through the same process as jase100k. Would be great to have a "rescan" option in wallet settings. Interested if this is possible since rescanblockchain isn't a JM RPC method.
Link here for reference: https://github.com/JoinMarket-Org/joinmarket-clientserver/issues/1082
This is not blocked anymore since https://github.com/JoinMarket-Org/joinmarket-clientserver/pull/1461 is merged :muscle: Anybody working on this already?
@editwentyone Would you be able to add an "Import Wallet" button and some views to Figma how you think the import process should look like? That'd be amazing.
@theborakompanioni sure, could you give me a rough overview of the needed steps? just with bulletpoints what is actually needed from your side
@theborakompanioni sure, could you give me a rough overview of the needed steps? just with bulletpoints what is actually needed from your side
This is what currently is done when creating a wallet:
- "Create Wallet" button clicked
- User provides a "wallet name" and a "password" (twice for verification)
- User is shown a seed phrase
- User must retype the seed phrase (verification)
- Done
So, the above steps (and their corresponding copies) can be reused and basically become:
- "Import Wallet" button clicked
- User specifies "wallet name" and "password" (Same as when creating)
- User must input the seed phrase (Instead of showing a seed phrase and let the user retype it)
- Then, the wallet is unlocked, but a rescan is triggered -> show somewhere that the rescan is in progress (Wallet is not usable till the rescan is complete.)
- e.g. show a "Rescan is in process" message on a banner element above the navbar (?)
- Done
Feel free to design as you see fit. :orange_heart:
on it…
update: hot and greasy live from bitcoin Miami… @theborakompanioni: https://www.figma.com/file/kfejZJFlwBywvLEnPEmJo1/JoinMarket-UI?type=design&node-id=5959-66524&t=3wpjCPr8CTTzNAwh-11
questions:
- can we show a rescan progress? i.e: 10% » no
- can we calculate how long it will take? i.e: 5 minutes left, please be patient » no
- does the rescan progress continues when the wallet is locked again, because the user wants to use another one in the meantime? » wallet must stay unlocked
@editwentyone
During the first steps of implementing this, some thoughts came up:
- There needs to be a confirmation screen similar to the "create wallet" flow, as the user needs to see the provided password in plaintext at least once - however, there is no need to re-enter the mnemonic phrase. The same component as in "create wallet" can be used.
- When rescanning the chain, a
blockheight
must be provided. This could theoretically be asked for via a datepicker element, but I'd thought I go with a plain number input for the first version. What do you think? - I need to confirm this, but I think a user should also be able to adapt the
gaplimit
, in order to find all funds in heavily used wallets. - Rescanning should not only be possible after importing a wallet - a user should be able to trigger a rescan anytime. I thought a button "Rescan chain" in section "Wallet" on the settings screen makes sense. It will open a separate page so that an explanation can be given as to what it is or what it is intended to do.
- I am totally lost on the wording and will add some filler text in the initial PR. Hopefully, someone can provide good texts that describe the functionality well.
let me know when I can test a first draft to experience it and also think about it :)
I modified the flow, based on what I could test and learn until now
https://www.figma.com/proto/kfejZJFlwBywvLEnPEmJo1/JoinMarket-UI?page-id=2850%3A67638&type=design&node-id=5959-66524&viewport=-14%2C-4147%2C0.29&t=z8QQU9wCauaNQ9kL-9&scaling=min-zoom&starting-point-node-id=5959%3A66524&show-proto-sidebar=1
there are some points to talk about, open to any feedback
- added cancel
- added back
- check of filename already taken during first screen
- added month, year and genesis option
no quite sure about rescaning from settings and what gap limit is. I need more clarification here please
I modified the flow, based on what I could test and learn until now
Looks awesome. :rocket:
there are some points to talk about, open to any feedback
* added cancel * added back * check of filename already taken during first screen * added month, year and genesis option
no quite sure about rescaning from settings and what gap limit is. I need more clarification here please
Yes, I definitely need some more input as well and I am a little bit unsure of what the right approach is (e.g. currently I think, we have to "pre-generate" a bunch of addresses and then start the rescanning - which means, a user might has to rescan a couple of times.. which feels like bad UX). I'll let you know once I have the basic building blocks ready - currently it is all very rough, but I should be able to allocate some time soon.
Things like "check of filename already taken during first screen" can be a follow-up feature request. I would not want to make reviewing the PR more complex than it already is (the wallet will just fail to be imported if the filename is already taken - same as within the current "create wallet" flow).
Then we should get a hint until then, to name it accordingly.
Also i thought about moving the date picker even a slide earlier, on the „active side“, where you actively insert your seed and choose a date. After that comes the „passive side“ to review only.
Still sick, so Update will come later on figma unfortunately