| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/en-US/docs/Web/API/Window/showDirectoryPicker | [Back] [Original] |
Get to know MDN better
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The showDirectoryPicker() method of the
Window interface displays a directory picker which allows the user to
select a directory.
showDirectoryPicker()
showDirectoryPicker(options)
options OptionalAn object containing options, which are as follows:
id OptionalBy specifying an ID, the browser can remember different directories for different IDs. If the same ID is used for another picker, the picker opens in the same directory.
mode OptionalA string that defaults to "read" for read-only access or "readwrite" for read
and write access to the directory.
startIn OptionalA FileSystemHandle or a well known directory ("desktop", "documents",
"downloads", "music", "pictures", or "videos") to open the dialog in.
A Promise whose fulfillment handler receives a FileSystemDirectoryHandle object.
AbortError DOMExceptionThrown if the user dismisses the prompt without making a selection,
or if the user agent deems the selected directory to be too sensitive or dangerous,
or if the PermissionStatus.state for the selected directory is not "granted" in the specified mode.
SecurityError DOMExceptionThrown if the call was blocked by the same-origin policy or it was not called via a user interaction such as a button press.
Transient user activation is required. The user has to interact with the page or a UI element in order for this feature to work.
This asynchronous function shows a directory picker and returns a
FileSystemDirectoryHandle once selected.
async function getDir() {
const dirHandle = await window.showDirectoryPicker();
// run code for dirHandle
}
| Specification |
|---|
| File System Access # api-showdirectorypicker |
This page was last modified on Nov 30, 2025 by MDN contributors.
WindowcachesclosedcookieStorecrashReportcredentiallesscrossOriginIsolatedcryptocustomElementsdevicePixelRatiodocumentdocumentPictureInPictureeventexternalfenceframeElementframesfullScreenhistoryindexedDBinnerHeightinnerWidthisSecureContextlaunchQueuelengthlocalStoragelocationlocationbarmenubarmozInnerScreenXmozInnerScreenYnamenavigationnavigatoropenerorientationoriginoriginAgentClusterouterHeightouterWidthparentperformancepersonalbarschedulerscreenscreenLeftscreenTopscreenXscreenYscrollbarsscrollMaxXscrollMaxYscrollXscrollYselfsessionStoragesharedStoragespeechSynthesisstatusstatusbartoolbartoptrustedTypesviewportvisualViewportwindowalert()atob()blur()btoa()cancelAnimationFrame()cancelIdleCallback()captureEvents()clearImmediate()clearInterval()clearTimeout()close()confirm()createImageBitmap()dump()fetch()fetchLater()find()focus()getComputedStyle()getDefaultComputedStyle()getScreenDetails()getSelection()matchMedia()moveBy()moveTo()open()postMessage()print()prompt()queryLocalFonts()queueMicrotask()releaseEvents()reportError()requestAnimationFrame()requestFileSystem()requestIdleCallback()requestResize()resizeBy()resizeTo()scroll()scrollBy()scrollByLines()scrollByPages()scrollTo()setImmediate()setInterval()setResizable()setTimeout()showDirectoryPicker()showOpenFilePicker()showSaveFilePicker()sizeToContent()stop()structuredClone()webkitConvertPointFromNodeToPage()webkitConvertPointFromPageToNode()afterprintappinstalledbeforeinstallpromptbeforeprintbeforeunloadblurdevicemotiondeviceorientationdeviceorientationabsoluteerrorfocusgamepadconnectedgamepaddisconnectedhashchangelanguagechangeloadmessagemessageerrorofflineonlineorientationchangepagehidepagerevealpageshowpageswappopstaterejectionhandledresizescrollsnapchangescrollsnapchangingstorageunhandledrejectionunloadvrdisplayactivatevrdisplayconnectvrdisplaydeactivatevrdisplaydisconnectvrdisplaypresentchangeDataTransferItem.getAsFileSystemHandle()FileSystemChangeRecordFileSystemDirectoryHandleFileSystemFileHandleFileSystemHandleFileSystemObserverFileSystemSyncAccessHandleFileSystemWritableFileStreamStorageManager.getDirectory()Window.showDirectoryPicker()Window.showOpenFilePicker()Window.showSaveFilePicker()Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |