thunderbiscuit / padawan-wallet

The bitcoin wallet trainer on Android.
https://padawanwallet.com/
Apache License 2.0
116 stars 50 forks source link

Summer of Bitcoin Project Template: Build advanced bitcoin features on Padawan Wallet #150

Closed thunderbiscuit closed 2 years ago

thunderbiscuit commented 2 years ago

Description

Padawan Wallet is a open source Android wallet that uses testnet to help onboard newcomers to bitcoin. See the readme for more information on the vision and goals.

The wallet is currently in alpha release on the Play Store, but requires polish, a test suite, migration to Jetpack Compose, code review, and more features!. The app is also currently implementing only a small number of the typical bitcoin mobile wallet workflows, and as such has tremendous room to grow in order to become a strong tool for learning.

The project does not currently have a comprehensive test suite. Related to Padawan is the Devkit Wallet, a reference Android application for the bitcoindevkit. The applicant should, over the course of the summer, be in a great position to look into adding features to the application. The bdk-android library supports much more than is currently available in Padawan, and there is a lot that could be added with it.

Expected Outcomes

Padawan Wallet should be well tested. The app should cover a wider range of things typical users of mobile wallets need to perform, and therefore practice with Padawan.

Resources

The bdk-android library will grow its test suite over the coming months and will be a good resource for the bitcoin side of things. The Devkit Wallet is the reference Android application for the bitcoindevkit. Padawan has a Discord server.

Skills Required

Knowledge of (or keen interested in) Kotlin or Java.

Difficulty

Medium

divyank00 commented 2 years ago

Can I take up on this task?

thunderbiscuit commented 2 years ago

Sure! What do you have in mind? I feel like these are rather big changes, so if you have anything specific you'd like to work on let me know and we can discuss how best to implement them.

divyank00 commented 2 years ago
  1. convert to compose
  2. Create test cases
  3. code and architecture improvement
thunderbiscuit commented 2 years ago

I'm working on some Compose stuff right now, and I need to make sure I understand well how to implement before I merge too much outside code for it, so I'd say this one is not quite ready on my end of things.

If you'd like to contribute, take a look at some of the issues already open, or open some issues you find as you build/test the app! You can also join the Discord server and we can chat more live in the development channel there if you'd like.

This particular issue is tied to the Summer of Bitcoin project, so I don't want to assign anyone in particular to it before I see the proposals that come back from the mentees in that project.

But I'm super interested in merging contributions! Take a look at the issues and we can discuss them one at a time, and maybe find a smaller one to start with. How about #152 or #125?

divyank00 commented 2 years ago

Cool will start with smaller ones!!

sa-tyam commented 2 years ago

Hello @divyank00 , are you still working on this project. I have spent time on the code base and with my experience of unit testing, I am also thinking of taking on this project.

Hello @thunderbiscuit, are there any specific issues that can be related to this project that I can focus on right now?

thunderbiscuit commented 2 years ago

Take a look at the issues we currently have open, and try out the app in the Play Store. I think you'll find a lot of problems... haha. Feel free to open issues with bugs you find!

anipaul2 commented 2 years ago

@thunderbiscuit is this issue can only be assigned after the project proposals for the summer of bitcoin?

thunderbiscuit commented 2 years ago

This issue is actually more of a "meta" issue. I won't be assigning it to anyone really, because it's only here to explain what the Summer of Bitcoin proposals could focus on in order to provide value. Development is ongoing, and many of the issues in the repo are being worked on at the moment!

thunderbiscuit commented 2 years ago

Thanks everyone for the awesome summer! Closing this now.