A modern, open-source, and self-custody Monero light-wallet built with Flutter.
Download from latest release, .AppImage to run on any distribution, .deb for Debian.
Download from latest release the .exe file.
Before you begin, ensure you have the following installed:
- Flutter SDK (3.8.1 or higher) - Installation guide
- Dart SDK (3.8.1 or higher) - Usually comes with Flutter
- Android Studio - For Android development
- Android SDK - API level 21+ (Android 5.0 Lollipop or higher)
- Java JDK - Version 11 or higher
git clone https://github.com/magicgrants/skylight-wallet.git
cd skylight-walletflutter pub get- Install Android Studio and the Android SDK
- Accept Android licenses:
flutter doctor --android-licenses
- Set up a device:
- Use an Android emulator (AVD Manager in Android Studio), or
- Connect a physical Android device with USB debugging enabled
- Verify setup:
This will check for any missing dependencies
flutter doctor
Run the app in debug mode with hot reload:
# Run on connected device or emulator
flutter run
# List available Android devices/emulators
flutter devices
# Run on a specific device
flutter run -d <device_id>Make sure you have an Android emulator running or a physical device connected before running the app.
Build a debug APK for testing:
flutter build apk --debugThe APK will be located at: build/app/outputs/flutter-apk/app-debug.apk
Build a debug APK for release:
flutter build apk --releaseThe APK will be located at: build/app/outputs/flutter-apk/app-release.apk
flutter build apk --split-per-abi --releaseThis creates separate APKs for each architecture:
app-armeabi-v7a-release.apk(32-bit ARM)app-arm64-v8a-release.apk(64-bit ARM)app-x86_64-release.apk(64-bit x86)
To install the built APK on your device:
# Install debug APK
flutter install
# Or manually using adb
adb install build/app/outputs/flutter-apk/app-release.apkNote: Other platforms (iOS, Linux, macOS, Windows, Web) are not currently supported but may be added in future releases.
The app uses Flutter's internationalization framework. To add a new language:
- Create a new ARB file in
lib/l10n/(e.g.,app_es.arbfor Spanish) - Copy the structure from
app_en.arband translate the strings - Run code generation:
flutter gen-l10n
- The generated localization files will be in
lib/l10n/
This is needed for the wallet functions and is located at android/app/src/main/jniLibs/<platform>/.
These instructions should work on Ubuntu 22.04. You can use the ubuntu:22.04 Docker image if you don't use Ubuntu as your OS.
$ apt update
$ apt install -y build-essential pkg-config autoconf libtool \
ccache make cmake gcc g++ git curl lbzip2 libtinfo5 gperf \
unzip python-is-python3 llvm$ git clone https://github.com/vtnerd/monero_c --recursive
$ cd monero_c
$ git checkout lwsf
$ git submodule update --init
$ ./apply_patches.sh monero# For armeabi-v7a
$ ./build_single.sh monero armv7a-linux-androideabi -j$(nproc)
# For arm64-v8a
$ ./build_single.sh monero aarch64-linux-android -j$(nproc)
# For x86_64
$ ./build_single.sh monero x86_64-linux-android -j$(nproc)Pull requests welcome! Thanks for supporting MAGIC Grants.
To join our Matrix community, click here.
