| Crates.io | tauri-plugin-profiling |
| lib.rs | tauri-plugin-profiling |
| version | 0.1.0 |
| created_at | 2026-01-14 20:32:43.648411+00 |
| updated_at | 2026-01-14 20:32:43.648411+00 |
| description | Tauri plugin for CPU profiling with flamegraph generation |
| homepage | |
| repository | https://github.com/fltsci/tauri-plugin-profiling |
| max_upload_size | |
| id | 2043724 |
| size | 315,190 |
A Tauri v2 plugin for CPU profiling with flamegraph generation.
Provides actual CPU profiling using sampling-based techniques, complementing tauri-plugin-tracing which provides span timing (wall-clock time including I/O waits).
| Platform | Backend |
|---|---|
| macOS/Linux | pprof-rs (SIGPROF) |
| Windows | SuspendThread + StackWalk64 |
[dependencies]
tauri-plugin-profiling = { git = "https://github.com/fltsci/tauri-plugin-profiling" }
pnpm add @tauri-apps/plugin-profiling
use tauri_plugin_profiling::ProfilingExt;
tauri::Builder::default()
.plugin(tauri_plugin_profiling::init())
.setup(|app| {
app.start_cpu_profile()?;
// ... work ...
let result = app.stop_cpu_profile()?;
println!("Flamegraph: {:?}", result.flamegraph_path);
Ok(())
})
import { startCpuProfile, stopCpuProfile, withProfiling } from '@tauri-apps/plugin-profiling';
await startCpuProfile({ frequency: 100 });
await doExpensiveOperation();
const result = await stopCpuProfile();
// Or use the convenience wrapper
const { result, profile } = await withProfiling(async () => processData());
MIT OR Apache-2.0