awesomeapp-dev / rust-desktop-app

Base desktop application code with Tauri, Native Web Components and SurrealDB (follow the VMES app architecture)
Apache License 2.0
249 stars 26 forks source link

Rust Desktop App Code Template (following AwesomeApp Blueprint)

Base desktop application code with Tauri, Native Web Components, and SurrealDB (follow the VMES app architecture)

See awesomeapp.dev for more info

Troubleshooting | Changelog | Discord Awesome App

Note: To enable persitent storage, edit the src-tauri/Cargo.toml to enable all surrealdb features.

Hot Reload dev

For hot-reload UI and Tauri development, run the following in your VSCode from this root folder:

awesome-app dev

This assumes awesome-app was installed locally (e.g., cargo install awesome-app)

IMPORTANT - Requires node.js v8 and above.

How it works

awesome-app dev will create an Awesome.toml which will be the list of commands it will run (format is self-explanatory).

You can run the commands manually if you want, or see below for list of commands.

We recommend using awesome-app dev but running each command manually might help troubleshoot.

Build manually

IMPORTANT: Make sure to have node.js latest of 16 or above.


Troubleshooting

Requirements on fedora 36:

On Fedora, and probably linux, the following needs to be present on the system.

dnf install gtk3-devel
dnf install webkit2gtk3-jsc-devel 
dnf install libsoup-devel
dnf install webkit2gtk3-devel.x86_64

Requirements on Ubuntu 20

npm i
npm i -g tauri
sudo aptitude install -y \
  build-essential \
  libpango1.0-dev \
  libsoup2.4-dev \
  libjavascriptcoregtk-4.0-dev \
  libgdk-pixbuf2.0-dev \
  libgtk-3-dev \
  libwebkit2gtk-4.0-dev
npm run tauri dev



This repo on GitHub