tauri-plugin-fs-pro

April 15, 2025 · View on GitHub

This plugin only works on tauri v2, if you need the v1 plugin, feel free to submit a PR!

What is the difference with @tauri-apps/plugin-fs?

The stat method of @tauri-apps/plugin-fs supports only files when getting size, while the metadata method of tauri-plugin-fs-pro supports both files and directories when getting size. And some additional methods are provided. More methods will be expanded in the future.

https://github.com/user-attachments/assets/f6cbf39d-7ce4-4efb-a348-90b8b3ed8b43

Platform Support

PlatformSupported
Windows
macOS
Linux
Android
iOS

Install

cargo add tauri-plugin-fs-pro

You can install the JavaScript Guest bindings using your preferred JavaScript package manager:

pnpm add tauri-plugin-fs-pro-api

Usage

src-tauri/src/lib.rs

pub fn run() {
    tauri::Builder::default()
+       .plugin(tauri_plugin_fs_pro::init())
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

src-tauri/capabilities/default.json

{
    ...
    "permissions": [
        ...
+       "fs-pro:default"
    ]
}

Afterwards all the plugin's APIs are available through the JavaScript guest bindings:

import { isExist } from "tauri-plugin-fs-pro-api";

const exists = await isExist("/Users/xxx/EcoPaste.txt");
console.log(exists); // true

Methods

MethodDescription
isExistCheck if a path exists.
isFileCheck if a path is a file.
isDirCheck if a path is a directory.
sizeGet the size of the path, or 0 if it does not exist.
nameGet the name of the path.
extnameGet the extension name of the path.
fullNameGet the full name of a file or directory including extension.
parentNameGet the parent name of the path.
getDefaultSaveIconPathGet the default save icon path.
iconGet the icon of the path.
metadataGet the metadata of the path.
compressCompress the source path into a tar.gz file to the destination path.
decompressDecompress the tar.gz file from the source path to the destination path.
transferMove the source path to the destination path.

Example

git clone https://github.com/ayangweb/tauri-plugin-fs-pro.git
pnpm install

pnpm build

cd examples/tauri-app

pnpm install

pnpm tauri dev

Thanks

Who's Use It

  • EcoPaste - Open source cross-platform clipboard management tool.

  • Coco AI - Search, Connect, Collaborate, Your Personal AI Search and Assistant, all in one space.