Skip to main content
The Deno 2 Release Candidate is here
Learn more
Module

x/deno/cli/js/lib.deno.unstable.d.ts>Deno.dir

A modern runtime for JavaScript and TypeScript.
Go to Latest
function Deno.dir
import { Deno } from "https://deno.land/x/deno@v1.0.0/cli/js/lib.deno.unstable.d.ts";
const { dir } = Deno;

UNSTABLE: Currently under evaluation to decide if method name dir and parameter type alias name DirKind should be renamed.

Returns the user and platform specific directories.

  const homeDirectory = Deno.dir("home");

Requires allow-env permission.

Returns null if there is no applicable directory or if any other error occurs.

Argument values: "home", "cache", "config", "executable", "data", "data_local", "audio", "desktop", "document", "download", "font", "picture", "public", "template", "tmp", "video"

"home"

Platform Value Example
Linux $HOME /home/alice
macOS $HOME /Users/alice
Windows {FOLDERID_Profile} C:\Users\Alice

"cache"

Platform Value Example
Linux $XDG_CACHE_HOME or $HOME/.cache /home/alice/.cache
macOS $HOME/Library/Caches /Users/Alice/Library/Caches
Windows {FOLDERID_LocalAppData} C:\Users\Alice\AppData\Local

"config"

Platform Value Example
Linux $XDG_CONFIG_HOME or $HOME/.config /home/alice/.config
macOS $HOME/Library/Preferences /Users/Alice/Library/Preferences
Windows {FOLDERID_RoamingAppData} C:\Users\Alice\AppData\Roaming

"executable"

Platform Value Example
Linux XDG_BIN_HOME or $XDG_DATA_HOME/../bin or $HOME/.local/bin /home/alice/.local/bin
macOS - -
Windows - -

"data"

Platform Value Example
Linux $XDG_DATA_HOME or $HOME/.local/share /home/alice/.local/share
macOS $HOME/Library/Application Support /Users/Alice/Library/Application Support
Windows {FOLDERID_RoamingAppData} C:\Users\Alice\AppData\Roaming

"data_local"

Platform Value Example
Linux $XDG_DATA_HOME or $HOME/.local/share /home/alice/.local/share
macOS $HOME/Library/Application Support /Users/Alice/Library/Application Support
Windows {FOLDERID_LocalAppData} C:\Users\Alice\AppData\Local

"audio"

Platform Value Example
Linux XDG_MUSIC_DIR /home/alice/Music
macOS $HOME/Music /Users/Alice/Music
Windows {FOLDERID_Music} C:\Users\Alice\Music

"desktop"

Platform Value Example
Linux XDG_DESKTOP_DIR /home/alice/Desktop
macOS $HOME/Desktop /Users/Alice/Desktop
Windows {FOLDERID_Desktop} C:\Users\Alice\Desktop

"document"

Platform Value Example
Linux XDG_DOCUMENTS_DIR /home/alice/Documents
macOS $HOME/Documents /Users/Alice/Documents
Windows {FOLDERID_Documents} C:\Users\Alice\Documents

"download"

Platform Value Example
Linux XDG_DOWNLOAD_DIR /home/alice/Downloads
macOS $HOME/Downloads /Users/Alice/Downloads
Windows {FOLDERID_Downloads} C:\Users\Alice\Downloads

"font"

Platform Value Example
Linux $XDG_DATA_HOME/fonts or $HOME/.local/share/fonts /home/alice/.local/share/fonts
macOS $HOME/Library/Fonts /Users/Alice/Library/Fonts
Windows

"picture"

Platform Value Example
Linux XDG_PICTURES_DIR /home/alice/Pictures
macOS $HOME/Pictures /Users/Alice/Pictures
Windows {FOLDERID_Pictures} C:\Users\Alice\Pictures

"public"

Platform Value Example
Linux XDG_PUBLICSHARE_DIR /home/alice/Public
macOS $HOME/Public /Users/Alice/Public
Windows {FOLDERID_Public} C:\Users\Public

"template"

Platform Value Example
Linux XDG_TEMPLATES_DIR /home/alice/Templates
macOS
Windows {FOLDERID_Templates} C:\Users\Alice\AppData\Roaming\Microsoft\Windows\Templates

"tmp"

Platform Value Example
Linux TMPDIR /tmp
macOS TMPDIR /tmp
Windows {TMP} C:\Users\Alice\AppData\Local\Temp

"video"

Platform Value Example
Linux XDG_VIDEOS_DIR /home/alice/Videos
macOS $HOME/Movies /Users/Alice/Movies
Windows {FOLDERID_Videos} C:\Users\Alice\Videos

Returns

string | null