import { MountMode, RAMVFS, Workspace } from '@struktoai/mirage-browser'async function main(): Promise<void> { const ws = new Workspace({ '/data': new RAMVFS() }, { mode: MountMode.WRITE }) await ws.shell('echo "hello mirage" > /data/hello.txt') const result = await ws.shell('cat /data/hello.txt') document.querySelector<HTMLDivElement>('#app')!.textContent = result.stdoutText await ws.close()}void main()
Start the development server:
npm run dev
Open the URL Vite prints. The page displays hello mirage.Before choosing a production mount, review the browser limitations
and browser support in the VFS table.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Mirage","description":"Mirage gives AI agents one virtual filesystem for S3, Google Drive, Slack, GitHub, Notion, Postgres, and SSH, so shell commands work across services.","colors":{"primary":"#0C0C0C","light":"#FAFAFA","dark":"#000000"},"logo":{"light":"https://mintcdn.com/struktoai/c-bTbyawGDFVW03M/logo/light.svg?fit=max\u0026auto=format\u0026n=c-bTbyawGDFVW03M\u0026q=85\u0026s=cc8ce7d79328b2f81d97991cc76aff03","dark":"https://mintcdn.com/struktoai/c-bTbyawGDFVW03M/logo/dark.svg?fit=max\u0026auto=format\u0026n=c-bTbyawGDFVW03M\u0026q=85\u0026s=aed8037cbe75dbf1de3fabed04aa4170"},"favicon":"https://mintcdn.com/struktoai/F9Lv_nTaj6By6crk/favicon.svg?fit=max\u0026auto=format\u0026n=F9Lv_nTaj6By6crk\u0026q=85\u0026s=bbca6fb54e64d72bdda46fb667828f1f","navbar":{"links":[{"icon":"globe","href":"https://www.strukto.ai/mirage","label":"mirage"},{"icon":"discord","href":"https://discord.gg/u8BPQ65KsS","label":""},{"icon":"x-twitter","href":"https://x.com/struktoai","label":""},{"icon":"github","href":"https://github.com/strukto-ai/mirage","label":"strukto-ai/mirage"}]},"footer":{"socials":{"github":"https://github.com/strukto-ai/mirage"}},"seo":{"metatags":{"keywords":"Mirage, filesystem for AI agents, virtual filesystem, AI agent tools, agent infrastructure, MCP alternative, bash for agents, S3 filesystem, Google Drive filesystem, Slack filesystem, GitHub filesystem, agent sandbox, Strukto","author":"Strukto","robots":"index, follow","googlebot":"index, follow","canonical":"https://docs.mirage.strukto.ai","theme-color":"#0C0C0C","color-scheme":"light dark","language":"en","category":"Technology","target":"developers","apple-mobile-web-app-capable":"yes","apple-mobile-web-app-status-bar-style":"black-translucent","og:type":"website","og:url":"https://docs.mirage.strukto.ai","og:image":"https://raw.githubusercontent.com/strukto-ai/mirage/main/assets/mirage-og-light@2x.png","og:image:alt":"Mirage: a virtual terminal for AI agents","og:site_name":"Mirage","og:locale":"en_US","twitter:card":"summary_large_image","twitter:site":"@struktoai","twitter:creator":"@struktoai","twitter:image":"https://raw.githubusercontent.com/strukto-ai/mirage/main/assets/mirage-og-light@2x.png","twitter:image:alt":"Mirage · A Virtual Terminal for AI Agents | Strukto"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"struktoai","hasAudioNarration":false,"actualSubdomain":"struktoai","customDomains":["docs.mirage.strukto.ai"],"gitSource":{"type":"github","owner":"strukto-ai","repo":"mirage","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad86cf3b8fa20a315510132","collectionId":"8c362f46-6af4-4b99-b199-ea588ae933f0","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad86cf3b8fa20a315510132"},"entitlements":{},"buildId":"6ad86db59cc3966443d2023f","clientVersion":"0.0.3908","searchFilterCounts":[{"language":"default","tag":"VFS","count":161},{"language":"default","tag":"Home","count":112},{"language":"default","tag":"Providers","count":106},{"language":"default","tag":"TS","count":88},{"language":"default","tag":"Python","count":87},{"language":"default","tag":"CLIs","count":71},{"language":"default","tag":"Object Storage","count":46},{"language":"default","tag":"Data \u0026 AI","count":28},{"language":"default","tag":"Cloud \u0026 Productivity","count":28},{"language":"default","tag":"AI Agents","count":26}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2-autocommit","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"teamspace","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"client-snapshot-docs-config","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"typescript/browser-quickstart","slug":"/typescript/browser-quickstart","pageMetadata":{"title":"Browser Quickstart","icon":"browser","description":"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.","keywords":["Mirage browser quickstart","@struktoai/mirage-browser","virtual filesystem","Vite"],"href":"/typescript/browser-quickstart"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`This runs Mirage in the browser with an in-memory filesystem and no credentials.`}),`\n`,_jsx(Heading,{level:`2`,id:`create-the-app`,children:`Create the app`}),`\n`,_jsx(_components.p,{children:`This Vite starter needs Node 20.19+ on Node 20, or Node 22.12+:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` create`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` vite@7`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` mirage-browser`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --template`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` vanilla-ts`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`cd`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` mirage-browser`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` @struktoai/mirage-browser`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Replace `,_jsx(_components.code,{children:`src/main.ts`}),` with:`]}),`\n`,_jsx(CodeBlock,{filename:`src/main.ts`,numberOfLines:`11`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`11`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`MountMode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`RAMVFS`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Workspace`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '@struktoai/mirage-browser'`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` main`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`:`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` Promise`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`void`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`> {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` ws`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Workspace`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'/data'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` RAMVFS`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() }, { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`mode:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` MountMode`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`WRITE`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` })`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` ws`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`shell`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'echo \"hello mirage\" > /data/hello.txt'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` result`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` ws`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`shell`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'cat /data/hello.txt'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` document`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`querySelector`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`HTMLDivElement`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`>(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'#app'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`!`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`textContent`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` result`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`stdoutText`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` ws`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`close`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`void`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` main`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Start the development server:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` dev`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Open the URL Vite prints. The page displays `,_jsx(_components.code,{children:`hello mirage`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Before choosing a production mount, review the `,_jsx(_components.a,{href:`/typescript/limitations#browser`,children:`browser limitations`}),`\nand browser support in the `,_jsx(_components.a,{href:`/home/setup/vfs`,children:`VFS table`}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Browser Quickstart","icon":"browser","description":"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.","keywords":["Mirage browser quickstart","@struktoai/mirage-browser","virtual filesystem","Vite"],"href":"/typescript/browser-quickstart"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Create the app","slug":"create-the-app","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"struktoai","siteName":"Mirage","title":"Browser Quickstart - Mirage","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-18T22:16:48.057Z","originalFileLocation":"typescript/browser-quickstart.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\">\u003cmeta data-mint-head name=\"keywords\" content=\"Mirage, filesystem for AI agents, virtual filesystem, AI agent tools, agent infrastructure, MCP alternative, bash for agents, S3 filesystem, Google Drive filesystem, Slack filesystem, GitHub filesystem, agent sandbox, Strukto\">\u003cmeta data-mint-head name=\"application-name\" content=\"Mirage\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index, follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Browser Quickstart - Mirage\">\u003cmeta data-mint-head property=\"og:description\" content=\"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Mirage\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mirage.strukto.ai/typescript/browser-quickstart\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://raw.githubusercontent.com/strukto-ai/mirage/main/assets/mirage-og-light@2x.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Browser Quickstart - Mirage\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://raw.githubusercontent.com/strukto-ai/mirage/main/assets/mirage-og-light@2x.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/struktoai/3lv99snhL-Tr_A0L/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Mirage\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0C0C0C\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"author\" content=\"Strukto\">\u003cmeta data-mint-head name=\"googlebot\" content=\"index, follow\">\u003cmeta data-mint-head name=\"theme-color\" content=\"#0C0C0C\">\u003cmeta data-mint-head name=\"color-scheme\" content=\"light dark\">\u003cmeta data-mint-head name=\"language\" content=\"en\">\u003cmeta data-mint-head name=\"category\" content=\"Technology\">\u003cmeta data-mint-head name=\"target\" content=\"developers\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-capable\" content=\"yes\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\">\u003cmeta data-mint-head name=\"og:image:alt\" content=\"Mirage: a virtual terminal for AI agents\">\u003cmeta data-mint-head name=\"twitter:creator\" content=\"@struktoai\">\u003cmeta data-mint-head name=\"twitter:image:alt\" content=\"Mirage · A Virtual Terminal for AI Agents | Strukto\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mirage.strukto.ai/typescript/browser-quickstart\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/typescript/browser-quickstart.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mirage.strukto.ai/#organization\",\"name\":\"Mirage\",\"url\":\"https://docs.mirage.strukto.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/struktoai/c-bTbyawGDFVW03M/logo/light.svg?fit=max\u0026auto=format\u0026n=c-bTbyawGDFVW03M\u0026q=85\u0026s=cc8ce7d79328b2f81d97991cc76aff03\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mirage.strukto.ai#website\",\"name\":\"Mirage\",\"url\":\"https://docs.mirage.strukto.ai\",\"publisher\":{\"@id\":\"https://docs.mirage.strukto.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart#webpage\",\"url\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart\",\"name\":\"Browser Quickstart\",\"description\":\"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\",\"dateModified\":\"2026-10-18T22:16:48.057Z\",\"isPartOf\":{\"@id\":\"https://docs.mirage.strukto.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Getting Started\",\"item\":\"https://docs.mirage.strukto.ai/typescript/install\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Browser Quickstart\",\"item\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart#article\",\"headline\":\"Browser Quickstart\",\"name\":\"Browser Quickstart\",\"description\":\"Run a Mirage RAM workspace in a browser with Vite and @struktoai/mirage-browser.\",\"url\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mirage.strukto.ai/typescript/browser-quickstart#webpage\"},\"image\":\"https://raw.githubusercontent.com/strukto-ai/mirage/main/assets/mirage-og-light@2x.png\",\"dateModified\":\"2026-10-18T22:16:48.057Z\",\"keywords\":\"Mirage browser quickstart, @struktoai/mirage-browser, virtual filesystem, Vite\",\"publisher\":{\"@id\":\"https://docs.mirage.strukto.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mirage.strukto.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Mirage\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Mirage","nav":{"global":null,"tabs":[{"tab":"Home","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/mirage-icon-light.svg","pages":[{"title":"Home","href":"/home/introduction"}]},{"tab":"Python","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/python-logo.svg","pages":[{"title":"Python","href":"/python/install"}]},{"tab":"TS","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/typescript-logo.svg","groups":[{"group":"Getting Started","pages":[{"title":"Installation","icon":"download","href":"/typescript/install"},{"title":"TypeScript Quickstart","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/typescript-logo.svg","description":"Create a Mirage TypeScript workspace, mount RAM as a virtual filesystem, and run shell commands with @struktoai/mirage-node.","href":"/typescript/quickstart"},{"title":"Browser Quickstart","icon":"browser","href":"/typescript/browser-quickstart"},{"title":"FUSE","icon":"hard-drive","description":"Set up FUSE support for MIRAGE with the TypeScript SDK.","href":"/typescript/setup/fuse"},{"title":"Limitations","icon":"triangle-exclamation","href":"/typescript/limitations"}]},{"group":"Access","pages":[{"title":"In-app","icon":"cube","href":"/typescript/access/in-app"},{"title":"Server","icon":"server","href":"/typescript/access/server"}]},{"group":"AI Agents","pages":[{"title":"Overview","icon":"robot","href":"/typescript/agents/index"},{"group":"Coding Agents","icon":"laptop-code","pages":[{"title":"Claude Code","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/claude-logo.svg","href":"/typescript/agents/claude-code"},{"title":"OpenAI Codex","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/openai-logo.svg","href":"/typescript/agents/codex"},{"title":"Grok Build","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/grok-logo.svg","href":"/typescript/agents/grok-build"},{"title":"Pi Coding Agent","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/pi-logo.svg","href":"/typescript/agents/pi"},{"title":"OpenCode","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/opencode-logo.svg","href":"/typescript/agents/opencode"},{"title":"DeepSeek Harness","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/deepseek-logo.svg","href":"/typescript/agents/dsh"}]},{"group":"Agent SDKs","icon":"cubes","pages":[{"title":"Vercel AI SDK","icon":"triangle","iconType":"solid","href":"/typescript/agents/vercel"},{"title":"Mastra","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/mastra-logo.svg","href":"/typescript/agents/mastra"},{"title":"Claude Agent SDK","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/claude-logo.svg","href":"/typescript/agents/claude-agent-sdk"},{"title":"OpenAI Agents SDK","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/openai-logo.svg","href":"/typescript/agents/openai"},{"title":"LangChain (Deep Agents)","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/langchain-logo.svg","href":"/typescript/agents/langchain"}]},{"group":"API \u0026 Environment","icon":"cloud","pages":[{"title":"OpenAI Agents API","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/openai-logo.svg","href":"/typescript/agents/openai-agents-api"},{"title":"Claude Managed Agents","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/claude-logo.svg","href":"/typescript/agents/claude-managed-agents"}]}]},{"group":"VFS","pages":[{"group":"Providers","icon":"grid-2","pages":[{"title":"Overview","icon":"grid-2","href":"/typescript/setup/vfs"},{"group":"Infrastructure","icon":"server","pages":[{"title":"Disk","icon":"hard-drive","href":"/typescript/setup/disk"},{"title":"OPFS","icon":"hard-drive","href":"/typescript/setup/opfs"},{"title":"Redis","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/redis-logo.svg","href":"/typescript/setup/redis"},{"title":"Upstash Redis","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/upstash-logo.svg","href":"/typescript/setup/upstash"},{"title":"SSH","icon":"server","href":"/typescript/setup/ssh"}]},{"group":"Object Storage","icon":"cloud","pages":[{"title":"S3","icon":"aws","href":"/typescript/setup/s3"},{"title":"Cloudflare R2","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/cloudflare-logo.svg","href":"/typescript/setup/r2"},{"title":"Google Cloud Storage","icon":"google","href":"/typescript/setup/gcs"},{"title":"OCI Object Storage","icon":"server","href":"/typescript/setup/oci"},{"title":"Supabase Storage","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/supabase-logo.svg","href":"/typescript/setup/supabase"},{"title":"MinIO","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/minio-logo.svg","href":"/typescript/setup/minio"},{"title":"Ceph","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/ceph-logo.svg","href":"/typescript/setup/ceph"},{"title":"SeaweedFS","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/seaweedfs-logo.svg","href":"/typescript/setup/seaweedfs"},{"title":"Wasabi","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/wasabi-logo.svg","href":"/typescript/setup/wasabi"},{"title":"Backblaze B2","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/backblaze-logo.svg","href":"/typescript/setup/backblaze"},{"title":"DigitalOcean Spaces","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/digitalocean-logo.svg","href":"/typescript/setup/digitalocean"},{"title":"Tencent COS","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/tencent-logo.svg","href":"/typescript/setup/tencent"},{"title":"Alibaba OSS","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/aliyun-logo.svg","href":"/typescript/setup/aliyun"},{"title":"Scaleway","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/scaleway-logo.svg","href":"/typescript/setup/scaleway"},{"title":"QingStor","icon":"cloud","href":"/typescript/setup/qingstor"}]},{"group":"Hugging Face","icon":"/images/huggingface-logo.svg","pages":[{"title":"HF Buckets","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/huggingface-logo.svg","href":"/typescript/setup/hf_buckets"},{"title":"HF Datasets","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/huggingface-logo.svg","href":"/typescript/setup/hf_datasets"},{"title":"HF Models","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/huggingface-logo.svg","href":"/typescript/setup/hf_models"},{"title":"HF Spaces","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/huggingface-logo.svg","href":"/typescript/setup/hf_spaces"}]},{"group":"Cloud \u0026 Productivity","icon":"folder-open","pages":[{"title":"Gmail","icon":"google","href":"/typescript/setup/gmail"},{"title":"Google Drive","icon":"google","href":"/typescript/setup/gdrive"},{"title":"Google Docs","icon":"google","href":"/typescript/setup/gdocs"},{"title":"Google Sheets","icon":"google","href":"/typescript/setup/gsheets"},{"title":"Google Slides","icon":"google","href":"/typescript/setup/gslides"},{"title":"OneDrive","icon":"microsoft","href":"/typescript/setup/onedrive"},{"title":"SharePoint","icon":"microsoft","href":"/typescript/setup/sharepoint"},{"title":"Dropbox","icon":"dropbox","href":"/typescript/dropbox"},{"title":"Box","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/box-logo.svg","href":"/typescript/box"},{"title":"Databricks Volume","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/databricks-logo.svg","href":"/typescript/setup/databricks_volume"}]},{"group":"Developer \u0026 Messaging","icon":"code","pages":[{"title":"GitHub","icon":"github","href":"/typescript/setup/github"},{"title":"Linear","icon":"triangle","href":"/typescript/setup/linear"},{"title":"Weights \u0026 Biases","href":"/typescript/setup/wandb"},{"title":"Langfuse","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/langfuse-logo.svg","href":"/typescript/setup/langfuse"},{"title":"Slack","icon":"slack","href":"/typescript/slack"},{"title":"Discord","icon":"discord","href":"/typescript/discord"},{"title":"Email","icon":"envelope","href":"/typescript/setup/email"}]},{"group":"Data \u0026 AI","icon":"database","pages":[{"title":"MongoDB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/mongodb-logo.svg","href":"/typescript/setup/mongodb"},{"title":"GridFS","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/mongodb-logo.svg","href":"/typescript/setup/gridfs"},{"title":"Postgres","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/postgres-logo.svg","href":"/typescript/setup/postgres"},{"title":"Airtable","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/airtable-logo.svg","href":"/typescript/setup/airtable"},{"title":"Chroma","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/chroma-logo.svg","href":"/typescript/setup/chroma"},{"title":"LanceDB","icon":"database","href":"/typescript/setup/lancedb"},{"title":"Qdrant","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/qdrant-logo.svg","href":"/typescript/setup/qdrant"},{"title":"Mem0","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/mem0.svg","href":"/typescript/setup/mem0"}]},{"group":"Notes \u0026 Tasks","icon":"book","pages":[{"title":"Notion","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/notion-logo.svg","href":"/typescript/setup/notion"},{"title":"Trello","icon":"trello","href":"/typescript/setup/trello"}]},{"title":"Adding a New VFS","icon":"plus","href":"/typescript/vfs/new"}]}]},{"group":"CLIs","pages":[{"title":"Overview","icon":"wrench","href":"/typescript/cli/index"},{"title":"Customize CLI","icon":"code","href":"/typescript/cli/custom"},{"group":"CLIs","icon":"wrench","pages":[{"title":"Himalaya","icon":"envelope","href":"/typescript/cli/himalaya"},{"title":"GWS","icon":"google","href":"/typescript/cli/gws"},{"title":"slack","icon":"slack","href":"/typescript/cli/slack"},{"title":"discord","icon":"discord","href":"/typescript/cli/discord"},{"title":"ntn","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/notion-logo.svg","href":"/typescript/cli/ntn"},{"title":"linear","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/linear-logo.svg","href":"/typescript/cli/linear"},{"title":"trello","icon":"trello","href":"/typescript/cli/trello"},{"title":"airtable","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/airtable-logo.svg","href":"/typescript/cli/airtable"},{"title":"gh","icon":"github","href":"/typescript/cli/gh"},{"title":"hf","icon":"https://mintlify.s3.us-west-1.amazonaws.com/struktoai/images/huggingface-logo.svg","href":"/typescript/cli/hf"},{"title":"git","icon":"git-alt","href":"/typescript/cli/git"}]}]},{"group":"Runtimes","pages":[{"title":"Runtimes","sidebarTitle":"TypeScript SDK","icon":"python","href":"/typescript/runtime/python"}]}]}]},"title":"Browser Quickstart - Mirage","buildId":"dpl_CUnGQP1HgFUzoxatVC37y4zP83Vx","deploymentId":"dpl_CUnGQP1HgFUzoxatVC37y4zP83Vx","dynamics":[],"chunks":[]}