path
The path module provides utilities for working with file and directory paths.
This package is also accessible with window.__TAURI__.path
when app.withGlobalTauri
in tauri.conf.json
is set to true
.
It is recommended to allowlist only the APIs you use for optimal bundle size and security.
Enumerations
BaseDirectory
Since
2.0.0
Enumeration Members
AppCache
AppCache: 16;
Source: path.ts:35
AppConfig
AppConfig: 13;
Source: path.ts:32
AppData
AppData: 14;
Source: path.ts:33
AppLocalData
AppLocalData: 15;
Source: path.ts:34
AppLog
AppLog: 17;
Source: path.ts:36
Audio
Audio: 1;
Source: path.ts:20
Cache
Cache: 2;
Source: path.ts:21
Config
Config: 3;
Source: path.ts:22
Data
Data: 4;
Source: path.ts:23
Desktop
Desktop: 18;
Source: path.ts:38
Document
Document: 6;
Source: path.ts:25
Download
Download: 7;
Source: path.ts:26
Executable
Executable: 19;
Source: path.ts:39
Font
Font: 20;
Source: path.ts:40
Home
Home: 21;
Source: path.ts:41
LocalData
LocalData: 5;
Source: path.ts:24
Picture
Picture: 8;
Source: path.ts:27
Public
Public: 9;
Source: path.ts:28
Resource
Resource: 11;
Source: path.ts:30
Runtime
Runtime: 22;
Source: path.ts:42
Temp
Temp: 12;
Source: path.ts:31
Template
Template: 23;
Source: path.ts:43
Video
Video: 10;
Source: path.ts:29
Functions
appCacheDir()
appCacheDir(): Promise< string >
Returns the path to the suggested directory for your app’s cache files.
Resolves to ${cacheDir}/${bundleIdentifier}
, where bundleIdentifier
is the value tauri.bundle.identifier
is configured in tauri.conf.json
.
Example
import { appCacheDir } from '@tauri-apps/api/path';const appCacheDirPath = await appCacheDir();
Since
1.2.0
Returns
Promise
< string
>
Source: path.ts:108
appConfigDir()
appConfigDir(): Promise< string >
Returns the path to the suggested directory for your app’s config files.
Resolves to ${configDir}/${bundleIdentifier}
, where bundleIdentifier
is the value tauri.bundle.identifier
is configured in tauri.conf.json
.
Example
import { appConfigDir } from '@tauri-apps/api/path';const appConfigDirPath = await appConfigDir();
Since
1.2.0
Returns
Promise
< string
>
Source: path.ts:57
appDataDir()
appDataDir(): Promise< string >
Returns the path to the suggested directory for your app’s data files.
Resolves to ${dataDir}/${bundleIdentifier}
, where bundleIdentifier
is the value tauri.bundle.identifier
is configured in tauri.conf.json
.
Example
import { appDataDir } from '@tauri-apps/api/path';const appDataDirPath = await appDataDir();
Since
1.2.0
Returns
Promise
< string
>
Source: path.ts:74
appLocalDataDir()
appLocalDataDir(): Promise< string >
Returns the path to the suggested directory for your app’s local data files.
Resolves to ${localDataDir}/${bundleIdentifier}
, where bundleIdentifier
is the value tauri.bundle.identifier
is configured in tauri.conf.json
.
Example
import { appLocalDataDir } from '@tauri-apps/api/path';const appLocalDataDirPath = await appLocalDataDir();
Since
1.2.0
Returns
Promise
< string
>
Source: path.ts:91
appLogDir()
appLogDir(): Promise< string >
Returns the path to the suggested directory for your app’s log files.
Platform-specific
- Linux: Resolves to
${configDir}/${bundleIdentifier}/logs
. - macOS: Resolves to
${homeDir}/Library/Logs/{bundleIdentifier}
- Windows: Resolves to
${configDir}/${bundleIdentifier}/logs
.
Example
import { appLogDir } from '@tauri-apps/api/path';const appLogDirPath = await appLogDir();
Since
1.2.0
Returns
Promise
< string
>
Source: path.ts:520
audioDir()
audioDir(): Promise< string >
Returns the path to the user’s audio directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_MUSIC_DIR
. - macOS: Resolves to
$HOME/Music
. - Windows: Resolves to
{FOLDERID_Music}
.
Example
import { audioDir } from '@tauri-apps/api/path';const audioDirPath = await audioDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:130
basename()
basename(path, ext?): Promise< string >
Returns the last portion of a path
. Trailing directory separators are ignored.
Example
import { basename } from '@tauri-apps/api/path';const base = await basename('path/to/app.conf');assert(base === 'app.conf');
Since
1.0.0
Parameters
Parameter | Type | Description |
---|---|---|
path | string | - |
ext ? | string | An optional file extension to be removed from the returned path. |
Returns
Promise
< string
>
Source: path.ts:650
cacheDir()
cacheDir(): Promise< string >
Returns the path to the user’s cache directory.
Platform-specific
- Linux: Resolves to
$XDG_CACHE_HOME
or$HOME/.cache
. - macOS: Resolves to
$HOME/Library/Caches
. - Windows: Resolves to
{FOLDERID_LocalAppData}
.
Example
import { cacheDir } from '@tauri-apps/api/path';const cacheDirPath = await cacheDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:152
configDir()
configDir(): Promise< string >
Returns the path to the user’s config directory.
Platform-specific
- Linux: Resolves to
$XDG_CONFIG_HOME
or$HOME/.config
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_RoamingAppData}
.
Example
import { configDir } from '@tauri-apps/api/path';const configDirPath = await configDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:174
dataDir()
dataDir(): Promise< string >
Returns the path to the user’s data directory.
Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME
or$HOME/.local/share
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_RoamingAppData}
.
Example
import { dataDir } from '@tauri-apps/api/path';const dataDirPath = await dataDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:196
delimiter()
delimiter(): string
Returns the platform-specific path segment delimiter:
;
on Windows:
on POSIX
Since
2.0.0
Returns
string
Source: path.ts:560
desktopDir()
desktopDir(): Promise< string >
Returns the path to the user’s desktop directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DESKTOP_DIR
. - macOS: Resolves to
$HOME/Desktop
. - Windows: Resolves to
{FOLDERID_Desktop}
.
Example
import { desktopDir } from '@tauri-apps/api/path';const desktopPath = await desktopDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:218
dirname()
dirname(path): Promise< string >
Returns the directory name of a path
. Trailing directory separators are ignored.
Example
import { dirname } from '@tauri-apps/api/path';const dir = await dirname('/path/to/somedir/');assert(dir === 'somedir');
Since
1.0.0
Parameters
Parameter | Type |
---|---|
path | string |
Returns
Promise
< string
>
Source: path.ts:619
documentDir()
documentDir(): Promise< string >
Returns the path to the user’s document directory.
Example
import { documentDir } from '@tauri-apps/api/path';const documentDirPath = await documentDir();
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DOCUMENTS_DIR
. - macOS: Resolves to
$HOME/Documents
. - Windows: Resolves to
{FOLDERID_Documents}
.
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:240
downloadDir()
downloadDir(): Promise< string >
Returns the path to the user’s download directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DOWNLOAD_DIR
. - macOS: Resolves to
$HOME/Downloads
. - Windows: Resolves to
{FOLDERID_Downloads}
.
Example
import { downloadDir } from '@tauri-apps/api/path';const downloadDirPath = await downloadDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:262
executableDir()
executableDir(): Promise< string >
Returns the path to the user’s executable directory.
Platform-specific
- Linux: Resolves to
$XDG_BIN_HOME/../bin
or$XDG_DATA_HOME/../bin
or$HOME/.local/bin
. - macOS: Not supported.
- Windows: Not supported.
Example
import { executableDir } from '@tauri-apps/api/path';const executableDirPath = await executableDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:284
extname()
extname(path): Promise< string >
Returns the extension of the path
.
Example
import { extname } from '@tauri-apps/api/path';const ext = await extname('/path/to/file.html');assert(ext === 'html');
Since
1.0.0
Parameters
Parameter | Type |
---|---|
path | string |
Returns
Promise
< string
>
Source: path.ts:634
fontDir()
fontDir(): Promise< string >
Returns the path to the user’s font directory.
Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME/fonts
or$HOME/.local/share/fonts
. - macOS: Resolves to
$HOME/Library/Fonts
. - Windows: Not supported.
Example
import { fontDir } from '@tauri-apps/api/path';const fontDirPath = await fontDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:306
homeDir()
homeDir(): Promise< string >
Returns the path to the user’s home directory.
Platform-specific
- Linux: Resolves to
$HOME
. - macOS: Resolves to
$HOME
. - Windows: Resolves to
{FOLDERID_Profile}
.
Example
import { homeDir } from '@tauri-apps/api/path';const homeDirPath = await homeDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:328
isAbsolute()
isAbsolute(path): Promise< boolean >
Returns whether the path is absolute or not.
Example
import { isAbsolute } from '@tauri-apps/api/path';assert(await isAbsolute('/home/tauri'));
Since
1.0.0
Parameters
Parameter | Type |
---|---|
path | string |
Returns
Promise
< boolean
>
Source: path.ts:664
join()
join(...paths): Promise< string >
Joins all given path
segments together using the platform-specific separator as a delimiter, then normalizes the resulting path.
Example
import { join, appDataDir } from '@tauri-apps/api/path';const appDataDirPath = await appDataDir();const path = await join(appDataDirPath, 'users', 'tauri', 'avatar.png');
Since
1.0.0
Parameters
Parameter | Type |
---|---|
…paths | string [] |
Returns
Promise
< string
>
Source: path.ts:604
localDataDir()
localDataDir(): Promise< string >
Returns the path to the user’s local data directory.
Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME
or$HOME/.local/share
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_LocalAppData}
.
Example
import { localDataDir } from '@tauri-apps/api/path';const localDataDirPath = await localDataDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:350
normalize()
normalize(path): Promise< string >
Normalizes the given path
, resolving '..'
and '.'
segments and resolve symbolic links.
Example
import { normalize, appDataDir } from '@tauri-apps/api/path';const appDataDirPath = await appDataDir();const path = await normalize(`${appDataDirPath}/../users/tauri/avatar.png`);
Since
1.0.0
Parameters
Parameter | Type |
---|---|
path | string |
Returns
Promise
< string
>
Source: path.ts:589
pictureDir()
pictureDir(): Promise< string >
Returns the path to the user’s picture directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_PICTURES_DIR
. - macOS: Resolves to
$HOME/Pictures
. - Windows: Resolves to
{FOLDERID_Pictures}
.
Example
import { pictureDir } from '@tauri-apps/api/path';const pictureDirPath = await pictureDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:372
publicDir()
publicDir(): Promise< string >
Returns the path to the user’s public directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_PUBLICSHARE_DIR
. - macOS: Resolves to
$HOME/Public
. - Windows: Resolves to
{FOLDERID_Public}
.
Example
import { publicDir } from '@tauri-apps/api/path';const publicDirPath = await publicDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:394
resolve()
resolve(...paths): Promise< string >
Resolves a sequence of paths
or path
segments into an absolute path.
Example
import { resolve, appDataDir } from '@tauri-apps/api/path';const appDataDirPath = await appDataDir();const path = await resolve(appDataDirPath, '..', 'users', 'tauri', 'avatar.png');
Since
1.0.0
Parameters
Parameter | Type |
---|---|
…paths | string [] |
Returns
Promise
< string
>
Source: path.ts:574
resolveResource()
resolveResource(resourcePath): Promise< string >
Resolve the path to a resource file.
Example
import { resolveResource } from '@tauri-apps/api/path';const resourcePath = await resolveResource('script.sh');
Since
1.0.0
Parameters
Parameter | Type | Description |
---|---|---|
resourcePath | string | The path to the resource. Must follow the same syntax as defined in tauri.conf.json > bundle > resources , i.e. keeping subfolders and parent dir components (../ ). |
Returns
Promise
< string
>
The full path to the resource.
Source: path.ts:431
resourceDir()
resourceDir(): Promise< string >
Returns the path to the application’s resource directory.
To resolve a resource path, see the [[resolveResource | resolveResource API
]].
Example
import { resourceDir } from '@tauri-apps/api/path';const resourceDirPath = await resourceDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:411
runtimeDir()
runtimeDir(): Promise< string >
Returns the path to the user’s runtime directory.
Platform-specific
- Linux: Resolves to
$XDG_RUNTIME_DIR
. - macOS: Not supported.
- Windows: Not supported.
Example
import { runtimeDir } from '@tauri-apps/api/path';const runtimeDirPath = await runtimeDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:454
sep()
sep(): string
Returns the platform-specific path segment separator:
\
on Windows/
on POSIX
Since
2.0.0
Returns
string
Source: path.ts:549
tempDir()
tempDir(): Promise< string >
Returns a temporary directory.
Example
import { tempDir } from '@tauri-apps/api/path';const temp = await tempDir();
Since
2.0.0
Returns
Promise
< string
>
Source: path.ts:536
templateDir()
templateDir(): Promise< string >
Returns the path to the user’s template directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_TEMPLATES_DIR
. - macOS: Not supported.
- Windows: Resolves to
{FOLDERID_Templates}
.
Example
import { templateDir } from '@tauri-apps/api/path';const templateDirPath = await templateDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:476
videoDir()
videoDir(): Promise< string >
Returns the path to the user’s video directory.
Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_VIDEOS_DIR
. - macOS: Resolves to
$HOME/Movies
. - Windows: Resolves to
{FOLDERID_Videos}
.
Example
import { videoDir } from '@tauri-apps/api/path';const videoDirPath = await videoDir();
Since
1.0.0
Returns
Promise
< string
>
Source: path.ts:498
© 2024 Tauri Contributors. CC-BY / MIT