About
This is the source code repository for muun's iOS wallet. Muun is a non-custodial 2-of-2 multisig wallet with a special focus on security and ease of use.
Setup
- Install golang
- Make sure you've set the GOPATH env var correctly
- Install gomobile
- Install cocoapods
- Make sure you have Xcode command line tools installed. You can check this in Xcode > Preferences > Locations > Command Line tools
- Run
tools/bootstrap-gomobile.sh
. This will install gomobile and bind libwallet to your GOPATH. - Run
cd falcon/app && pod install
- You're done! Open the workspace file and try building the project.
Structure
The app has three layers:
- Data: handles the data backends, such as the database, the operating system, or the network.
- Domain: contains the models and business logic (use cases in clean architecture lingo).
- Presentation: contains the UI code
- libwallet: contains the crypto and bitcoin specific code. It's written in golang and bridged using gomobile.
Auditing
- Most of the key handling and transaction crafting operations happen in the libwallet module.
- All the secure storage and data handling happens in the data layer.
- All the business logic that decides when to sign what happens in the domain layer.
Responsible Disclosure
Send us an email to report any security related bugs or vulnerabilities at [email protected].
You can encrypt your email message using our public PGP key.
Public key fingerprint: 1299 28C1 E79F E011 6DA4 C80F 8DB7 FD0F 61E6 ED76