MCPcopy Index your code
hub / github.com/awesomeapp-dev/rust-desktop-app

github.com/awesomeapp-dev/rust-desktop-app @v0.9.22

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.9.22 ↗ · + Follow
188 symbols 350 edges 51 files 11 documented · 6% updated 2y ago★ 3056 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Rust Base App Template for AWESOME-APP

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

IMPORTANT - Requires node.js v8 and above.

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

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.

  • npm run tauri icon src-tauri/icons/app-icon.png - This will build the application icons.

  • npm run pcss - This will build the postcss files (src-ui/pcss/**/*.pcss).

  • npm run rollup - This will build and package the typescript files (src-ui/src/**/*.ts).

  • npm run localhost - This will run a localhost server with the dist/ folder as root (frontend hot reload)

  • In another terminal, npm run tauri dev - Will start the Tauri build and start the process.

Troubleshooting

  • Make sure to have node.js 18 or above.
  • If some cryptic errors, run the command above one by one.
  • If npm tauri dev commands fail, try to do:
  • cd src-tauri
  • cargo build
  • This might be an important first step when using full surrealdb (i.e., with default features and not only kv-mem)

  • It failed to compile and came up with the error failed to download replaced source registry crates-io. Deleting the cargo.lock file and package-lock.json file fixed it.

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

Happy Coding!

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 83
Class 49
Function 35
Interface 20
Enum 1

Languages

Rust53%
TypeScript47%

Modules by API surface

src-tauri/src/model/store/surreal_store.rs19 symbols
src-ui/src/view/tasks-dt.ts17 symbols
src-ui/src/view/nav-v.ts16 symbols
src-ui/src/model/index.ts16 symbols
src-tauri/src/model/task.rs12 symbols
src-tauri/src/model/project.rs12 symbols
src-ui/src/view/project-v.ts9 symbols
src-ui/src/view/menu-c.ts7 symbols
src-ui/src/view/app-v.ts6 symbols
src-ui/src/router.ts5 symbols
src-tauri/src/model/mod.rs5 symbols
src-tauri/src/model/bmc_base.rs5 symbols

For agents

$ claude mcp add rust-desktop-app \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page