Goal: Have sam-node working on Android and iOS. We want to reuse as much of the existing Go code as possible to keep maintenance near zero.
Step 1 (PoC): Just get something working, easy to use, and easy to install. No need to overcomplicate things at this stage.
Suggested Approach:
We want to try using Flutter and FFI (though open to expert opinions if there is a better way). The idea is to use FFI just to start/stop the Go node, and then have clients talk to it locally via standard HTTP/MCP. This avoids rewriting the complex p2p and routing logic.
- This should live in a new folder, something like
mobile/sam-node-app.
Tooling & CI:
- Add targets to the
Makefile[cite: 1] to automate the toolchain and FFI bindings generation.
- Add a GitHub Action to ensure the mobile builds do not regress.
Goal: Have
sam-nodeworking on Android and iOS. We want to reuse as much of the existing Go code as possible to keep maintenance near zero.Step 1 (PoC): Just get something working, easy to use, and easy to install. No need to overcomplicate things at this stage.
Suggested Approach:
We want to try using Flutter and FFI (though open to expert opinions if there is a better way). The idea is to use FFI just to start/stop the Go node, and then have clients talk to it locally via standard HTTP/MCP. This avoids rewriting the complex p2p and routing logic.
mobile/sam-node-app.Tooling & CI:
Makefile[cite: 1] to automate the toolchain and FFI bindings generation.