The AutoWallet application is a foundational framework to build your app from React, Typescript & Tailwind. AutoWallet simplifies the development process, allowing developers to focus on adding unique features and functionalities without starting from scratch. This accelerates development time and ensures consistency and security across wallet applications built on the Autonomi Network.
AutoWallet utilizes the safe repo, a high-level API Layer for Autonomi, built over the course of many months by @loziniak.
safe repo’s name pays homage to our origins but functionally it propels development of Autonomi forward.
Thanks for the support folks. We are powered by your encouragement!
Just to throw out the low hanging additional feature, mentioned by both @safemedia and @loziniak, also on @dirvine’s wishlist, would be to have this packaged with an optional network node!
We had that planned but the guys are so busy (as you can see) but we can get er done.
I get as far as yarn run tauri build and then nothing other than this output
willie@gagarin:~/projects/maidsafe/autowallet$ yarn run tauri build
yarn run v1.22.19
warning ../../package.json: No license field
$ tauri build
Running beforeBuildCommand `yarn build`
warning ../../package.json: No license field
$ tsc && vite build
vite v6.2.5 building for production...
✓ 2500 modules transformed.
dist/index.html 0.46 kB │ gzip: 0.29 kB
dist/assets/index-Cjs-PJjd.css 51.88 kB │ gzip: 9.37 kB
dist/assets/index-Bt4tZP2t.js 795.63 kB │ gzip: 249.42 kB
(!) Some chunks are larger than 500 kB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
✓ built in 8.47s
Compiling AutoWallet v0.1.1 (/home/willie/projects/maidsafe/autowallet/src-tauri)
warning: unused import: `tauri::path::BaseDirectory`
--> src/server.rs:3:5
|
3 | use tauri::path::BaseDirectory;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused import: `tauri::Manager`
--> src/server.rs:5:5
|
5 | use tauri::Manager;
| ^^^^^^^^^^^^^^
warning: use of deprecated method `tauri::Manager::unmanage`: This method is unsafe, since it can cause dangling references.
--> src/lib.rs:203:17
|
203 | app.unmanage::<Mutex<Option<Safe>>>();
| ^^^^^^^^
|
= note: `#[warn(deprecated)]` on by default
warning: use of deprecated method `tauri::Manager::unmanage`: This method is unsafe, since it can cause dangling references.
--> src/lib.rs:289:9
|
289 | app.unmanage::<Mutex<Option<Safe>>>()
| ^^^^^^^^
warning: unused variable: `app`
--> src/server.rs:25:23
|
25 | fn data(path: String, app: &AppHandle) -> Result<Vec<u8>, String> {
| ^^^ help: if this is intentional, prefix it with an underscore: `_app`
|
= note: `#[warn(unused_variables)]` on by default
warning: method `full_path` is never used
--> src/frontend.rs:22:12
|
21 | impl AutonomiFileMetadata {
| ------------------------- method in this implementation
22 | pub fn full_path(&self) -> Result<PathBuf, Error> {
| ^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
warning: function `autonomi` is never used
--> src/server.rs:8:15
|
8 | pub(crate) fn autonomi(path: &str) -> Result<(XorName, PathBuf), String> {
| ^^^^^^^^
warning: `AutoWallet` (lib) generated 7 warnings (run `cargo fix --lib -p AutoWallet` to apply 2 suggestions)
Finished `release` profile [optimized] target(s) in 1m 54s
Built application at: /home/willie/projects/maidsafe/autowallet/src-tauri/target/release/AutoWallet
Bundling AutoWallet_0.1.1_amd64.deb (/home/willie/projects/maidsafe/autowallet/src-tauri/target/release/bundle/deb/AutoWallet_0.1.1_amd64.deb)
Finished 1 bundle at:
/home/willie/projects/maidsafe/autowallet/src-tauri/target/release/bundle/deb/AutoWallet_0.1.1_amd64.deb
Done in 141.64s.
What am I missing?
rustc --version is rustc 1.86.0 (05f9846f8 2025-03-31)
yarn version is 1.22.19
Yeah these warnings will need to be squashed before the build will compile.
Basically I have it that it checks that all unused code is removed before you generate a production build.
I’ll remove those lines today.
The app should run fine in dev mode via yarn run tauri dev
I updated rust which was a faff cos before it would update I had to run rustup component remove --toolchain stable rls
That ran with fewer errors until
warning: function `autonomi` is never used
--> src/server.rs:8:15
|
8 | pub(crate) fn autonomi(path: &str) -> Result<(XorName, PathBuf), String> {
| ^^^^^^^^
warning: `AutoWallet` (lib) generated 7 warnings (run `cargo fix --lib -p AutoWallet` to apply 2 suggestions)
Finished `release` profile [optimized] target(s) in 3m 22s
Built application at: /home/willie/projects/maidsafe/autowallet/src-tauri/target/release/AutoWallet
Bundling AutoWallet_0.1.1_amd64.deb (/home/willie/projects/maidsafe/autowallet/src-tauri/target/release/bundle/deb/AutoWallet_0.1.1_amd64.deb)
Finished 1 bundle at:
/home/willie/projects/maidsafe/autowallet/src-tauri/target/release/bundle/deb/AutoWallet_0.1.1_amd64.deb
Done in 225.16s.
then
willie@gagarin:~/projects/maidsafe/autowallet$ cargo fix --lib -p AutoWallet
error: could not find `Cargo.toml` in `/home/willie/projects/maidsafe/autowallet` or any parent directory
followed by
sudo dpkg -i /home/willie/projects/maidsafe/autowallet/src-tauri/target/release/bundle/deb/AutoWallet_0.1.1_amd64.deb
[sudo] password for willie:
Selecting previously unselected package auto-wallet.
(Reading database ... 675192 files and directories currently installed.)
Preparing to unpack .../deb/AutoWallet_0.1.1_amd64.deb ...
Unpacking auto-wallet (0.1.1) ...
Setting up auto-wallet (0.1.1) ...
Processing triggers for gnome-menus (3.36.0-1.1ubuntu3) ...
Processing triggers for desktop-file-utils (0.27-2build1) ...
Processing triggers for bamfdaemon (0.5.6+22.04.20220217-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
willie@gagarin:~/projects/maidsafe/autowallet$ AutoWallet
Could not create GBM EGL display: EGL_NOT_INITIALIZED. Aborting...
Aborted (core dumped)
willie@gagarin:~/projects/maidsafe/autowallet$ glxinfo | grep "OpenGL"
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 110
Current serial number in output stream: 111
Does not look good…
TBH I dont use much fancy graphics - I have an old GeForce GTX 1650 SUPER that does fine for my flightsimming on flightgear.org and helps run AnythingLLM locally.
I’ll poke further …