A Melos monorepo for the
cs_monero package,
the cs_monero_flutter_libs package, and their dependencies.
- A simplified Flutter/Dart Monero wallet library.
- Depends on https://github.com/MrCyjaneK/monero_c/
- Abstracts the wallet2 spaghetti.
- Refactored and organized version of flutter_libmonero based on https://github.com/cypherstack/flutter_libmonero/tree/heavy-refactor.
Install Melos (dart pub global activate melos) and
run melos bootstrap (or melos bs) in this root directory to get started.
By default, cs_monero_flutter_libs will automatically include and download the
appropriate platform-specific binaries when you run flutter pub get.  Use
these at your own risk.  For windows building see building notes before
proceeding.  To build the libraries yourself:
- Add this repo as a git submodule to your project and add cs_moneroandcs_monero_flutter_libsto your pubspec.yaml as relative/path dependencies. If you're migrating fromflutter_libmonerotocs_monero, also addcompat.
- Install Melos
(dart pub global activate melos) and runmelos bootstrap(ormelos bs).
- Build the platform you want using one of the following commands:
- melos build:android
- melos build:ios
- melos build:linux
- melos build:macos
- melos build:windows
 
- Run melos copyLibsto copy the binaries to where Flutter can find them.
- This repo's build scripts are just wrappers around monero_c's build scripts. For details and requirements see https://github.com/MrCyjaneK/monero_c/
- To do a clean/fresh build, just the delete the top level builddir.
- Windows: Builds have been tested on Windows 11 with Ubuntu 24.04 in WSL2. Do not install Flutter via Snap, follow one of these guides instead: https://docs.flutter.dev/get-started/install/linux/desktop
- Windows: Due to path handling in a makefile in monero_c, the WSL PATHcannot contain spaces or brackets. To work around this, runmelos prepareMoneroCand thenexport PATH=$(echo "$PATH" | tr ':' '\n' | grep -v '[ ()]' | paste -sd:)before runningmelos build:windows.
- Tests? (at least what is possible)
- Accounts API?
- Use FFI project skeleton for libs vs Platform Plugin?
- Cleaner/more user friendly API