Please login or register.

Open source Monero mobile wallet for Android and iOS

What will be done?

Monero mobile wallet for Android and iOS platforms is going to be implemented. It will be an open source project, and will utilize security and privacy of the Monero technology in full inside user’s mobile phone.

We are going to use React Native cutting-edge technology that allows to reuse up to 80% of the code when building both Android and iOS platforms and thus reducing development costs drastically. The whole project will be published as an open source, reviewed and approved by the core developers.

As stated above, we will use React Native to power UI and C++ for core the functionality, handling transactions, cryptography, networking, etc. Our code will be based on Monero core components which will ensure reliability and security of the wallet software, speed up development process and make the whole Monero ecosystem stronger.

We are going to use best UI\UX practices established by the popular mobile apps, that will make users feel comfortable and natural when using Monero mobile wallet. Our plan is to work with Gustaf (personal website, reddit discussion, Monero Idea proposal) as a team to deliver a neat and smooth looking app. XMR tech has some known technical restrictions for lightweight wallets, so we will support different options that will cover end-user needs, keeping balance between privacy and transaction handling, speed and storage. We are going to stick to core developers’ recommendations in all these questions. Who will work on this task?

We are the team of two developers and a designer who are going to work on the project. Developers are skilled software engineers with 7+ years of experience in many web and mobile projects. And the designer is a public person, some of his work can be found on his website.

We are going to work for community based on trustless agreement, which means, it doesn’t matter who the devs are and what are they working on right now unless they deliver what was promised and both core developers and the community are happy with. If devs fail, that’s pretty clear - community shares no funding with them.

Currently we’ve built a proof of concept app for Android with the basic bridge implementation between Monero’s official simple wallet C++ codebase and our mobile UI, that gives us access to simple wallet features. Having said that, we are ready to continue our work as soon as the community gives this project a go. The plan is to provide weekly updates on our progress as well as publishing code on the github.

Why?

Monero opensource mobile wallet is a community’s long-awaited project. There is no any mobile wallet available today and this is exactly what stands in the way of the cryptocurrency wide adoption. We are crypto enthusiasts and big fans of an XMR tech and we are willing to contribute in the best way possible.

This is a pretty huge project that requires a lot of time and developer efforts to be contributed. To make this project happen as soon as possible and in order for the whole team to focus on it full time, funding is required. That is why we are here.

The Proposal and Milestones

These are the functional mockups of the application. They should give an idea of what a user can do within an application. (MoneroMobileMockups.pdf)

Milestone 1. Keys and wallet data.

This initial version will have all the necessary functionality to login to the wallet application, create or restore a wallet from a mnemonic seed, effectively managing mobile storage and paths. The wallet will encapsulate simple_wallet functionality, wrapping low level cryptographic and encryption functions and providing an interface to core functionality from the client application.

High-level tasks:

  • Codebase infrastructure and build toolset
  • Intro screen
  • Login screen
  • Create a new wallet screen
  • Restore a new wallet screen
  • Account status and balance

Milestone 2. View-only wallet.

At this stage there will be implemented receive and transaction history screens, as well as unconfirmed balances received in the incoming transactions.

High-level tasks:

  • Incoming transactions / pending balances
  • Receive screens
  • Transaction history screen
  • Integrate QR code components for receiving screens
  • UI skin support

Milestone 3. Mobile Wallet v1.0 for Android

At this stage, the application for android will be implemented in full. It will operate through the remote node (the same approach as used in the official simple wallet). The public remote nodes will be hardcoded and will be sufficient for most users. Those who want to use their own nodes, will be able to specify remote node url in settings. The bottom line is: the wallet application with all monero privacy features operating through the remote public or private node will be implemented.

High-level tasks:

  • Send screen
  • Manage privacy settings (tx mixing levels)
  • Support switching between remote nodes
  • Settings screen
  • Multilingual support

Milestone 4. Mobile Wallet v1.0 for iOS

At this stage Android wallet will be ported to iOS platform in full. Thanks to React Native technology this step will be implemented a lot faster than producing v1.0 of the Android wallet.

Funding

Programming

We have estimated milestones 1-3 to require about 200 hours of work each and the final milestone (full-featured IOS version) to require 300 hours. At the 3.3 XMR\hour rate funding target is 3000 XMR

UI

It requires 60 hours to finalize GUI designs and to provide UIX expertise during the whole development process At the 3.3 XMR\hour rate funding target is 200 XMR which is 50 XMR per milestone

Totals

  • Milestone 1 - 720 XMR
  • Milestone 2 - 720 XMR
  • Milestone 3 - 720 XMR
  • Milestone 4 - 1040XMR
Replies: 20
monerowallet posted 7 years ago Weight: 0 | Link [ - ]

This proposal appears to have significant community support as evidenced by this thread and at reddit.

I am in favor of moving this so that it can begin getting funded.

sridharobilisetty posted 7 years ago Weight: 0 | Link [ - ]

Mobile wallet is one of the most useful technology in this time. It provides a simpler digital payments experience. This mobile wallet technology supports stickers, digital watches and NFC. Checkout

monerok edited 6 years ago Weight: 0 | Link [ - ]

In light of the CIA capabilities, what is done to ensure security of user's, is there any update in logic process in light of the revelations?

monerodinero posted 7 years ago Weight: 0 | Link [ - ]

I'm still hoping this moves forward! Any status?

michaelhenderson posted 6 years ago Weight: 0 | Link [ - ]

Where is the GitHub repo for this project?

KwukDuck edited 6 years ago Weight: 0 | Link [ - ]

You really need over $130.000 to create a mobile app? You're doing something wrong... I'll do it for $100.000 and have it done in two weeks. Please contact me.

vondes posted 6 years ago Weight: 0 | Link [ - ]

so, can my mobile recorder https://mobilerecorder24.com/ work with ur app? I want to record all my operations.

Gingeropolous posted 7 years ago Replies: 1 | Weight: 0 | Link [ - ]

What did you guys decide for the backend? Is a full node going to run on the phone or is the user expected to connect to a remote node?

Reply to: Gingeropolous
alexg posted 7 years ago Replies: 1 | Weight: 0 | Link [ - ]

Currently we have researched and estimated a version designed to work with the remote node, wrapping the functionality around monero simple wallet. If the project goes smoothly we can setup extra milestones and focus on porting full node on mobile device.

Reply to: alexg Gingeropolous
Gingeropolous posted 7 years ago Weight: 0 | Link [ - ]

Who is going to run / maintain the remote nodes?

ferretinjapan posted 7 years ago Weight: 0 | Link [ - ]

Sounds like a great plan, here's hoping there are no snags along the way :).

Madmortigan posted 7 years ago Weight: 0 | Link [ - ]

This seems like a well thought out proposal. I'll support it.

xmr_eric posted 7 years ago Replies: 1 | Weight: 0 | Link [ - ]

Couldn't our current GUI be adapted to iOS and Android since our Compact Mode (icon in the top left) is basically the same aspect ratio as a phone display? I'm not a dev, so tell me if this wouldn't work.

Reply to: xmr_eric
alexg posted 7 years ago Replies: 1 | Weight: 0 | Link [ - ]

This is a good question for GUI devs and I guess they can give you more information regarding this option. From our perspective the thing you are talking about - the adaptive\responsive\optimized UI for various phone\screen sizes, is just one development aspect. What is the most important and also the difficult for mobile app is to provide the proper level of privacy. Unfortunately, for the mobile environment current GUI wallet doesn't solve this problem, even assuming it can be ported there as-is.

Reply to: alexg xmr_eric
Jaquee posted 7 years ago Weight: 0 | Link [ - ]

Could you elaborate on this please? What privacy enhancements can be expected compared to the existing GUI?

RonnieG posted 7 years ago Weight: 0 | Link [ - ]

Hi there. I like Gustaf's Monero wallet. I also like the colour Orange but I guess that's not the overall consensus.

I'm a little bit concerned about this Pin though. Is that Pin all that's needed to log into the wallet on my Phone and see my transactions balance and make payments?

Has funding already started? If so - how much has been raised so far? As this is the first project I will support what happens now? When is it officially adopted and live update of the amount raised is displayed?

(Sorry my instant gratification thing again....)

monerodinero posted 7 years ago Weight: 0 | Link [ - ]

I would support this. But, I think monero in Jan-Mar of next year will be 300 million market cap or higher. Obviously producing a wallet of this quality would also draw more users and confidence in the currency. Funding it right now at this price seems not such a good bang for the monero. However I do want to see this developed!! It looks beautiful.

monerowallet edited 7 years ago Replies: 1 | Weight: 0 | Link [ - ]

I would support this as well - but I'm not sure that the community can afford another large proposal. Hopefully I'm wrong.

Maybe it would be easier to port the existing monero-core codebase to ios / android with some UI polish than re-building it in React Native? This would also allow you guys to lower the funding target as it wouldn't be a complete re-write.

I still see the value in a separate react-native based mobile wallet (especially with the great design work), so I hope this proposal is accepted.

Reply to: monerowallet
alexg posted 7 years ago Weight: 0 | Link [ - ]

We've discussed and researched the possibility of porting an existing GUI project to mobile platforms. We have dismissed this idea for a number of reasons: first of all we are not QT experts and especially when talking about mobile development, second there is a bigger problem with app core itself (please see this post). React Native is our strong point and our area of expertise, and also a rapidly developing tech used by top companies like FB for a reason: it gives an opportunity to build modern looking mobile apps faster, especially when talking about cross-platform solutions. If the community, for some reason decides to use QT GUI as a base for mobile development instead of React Native, unfortunately we won't be helpful here since we don't have an appropriate skillset.

monerodinero posted 7 years ago Weight: 0 | Link [ - ]

Please include the ability to choose the ip of a remote node. I have a node running that I'd love to connect to on my phone. Lets do this!