[{"data":1,"prerenderedAt":713},["ShallowReactive",2],{"navigation_docs":3,"-docs-storage-nitro":77,"-docs-storage-nitro-surround":708},[4,19,41,63],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":18},"Getting Started","i-ph-rocket-launch-duotone","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[10,14],{"title":11,"path":12,"stem":13},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F1.installation",{"title":15,"path":16,"stem":17},"Configuration","\u002Fdocs\u002Fgetting-started\u002Fconfiguration","docs\u002F1.getting-started\u002F2.configuration",false,{"title":20,"icon":21,"path":22,"stem":23,"children":24,"page":18},"Storage","i-ph-database-duotone","\u002Fdocs\u002Fstorage","docs\u002F2.storage",[25,29,33,37],{"title":26,"path":27,"stem":28},"Overview","\u002Fdocs\u002Fstorage\u002Foverview","docs\u002F2.storage\u002F1.overview",{"title":30,"path":31,"stem":32},"NuxtHub","\u002Fdocs\u002Fstorage\u002Fnuxthub","docs\u002F2.storage\u002F2.nuxthub",{"title":34,"path":35,"stem":36},"Nitro Storage","\u002Fdocs\u002Fstorage\u002Fnitro","docs\u002F2.storage\u002F3.nitro",{"title":38,"path":39,"stem":40},"Memory","\u002Fdocs\u002Fstorage\u002Fmemory","docs\u002F2.storage\u002F4.memory",{"title":42,"icon":43,"path":44,"stem":45,"children":46,"page":18},"Composables","i-ph-puzzle-piece-duotone","\u002Fdocs\u002Fcomposables","docs\u002F3.composables",[47,51,55,59],{"title":48,"path":49,"stem":50},"useFlag()","\u002Fdocs\u002Fcomposables\u002Fuse-flag","docs\u002F3.composables\u002F1.use-flag",{"title":52,"path":53,"stem":54},"useVariant()","\u002Fdocs\u002Fcomposables\u002Fuse-variant","docs\u002F3.composables\u002F2.use-variant",{"title":56,"path":57,"stem":58},"useAllFlags()","\u002Fdocs\u002Fcomposables\u002Fuse-all-flags","docs\u002F3.composables\u002F3.use-all-flags",{"title":60,"path":61,"stem":62},"useFlagsStatus()","\u002Fdocs\u002Fcomposables\u002Fuse-flags-status","docs\u002F3.composables\u002F4.use-flags-status",{"title":64,"icon":65,"path":66,"stem":67,"children":68,"page":18},"Server","i-ph-cloud-duotone","\u002Fdocs\u002Fserver","docs\u002F4.server",[69,73],{"title":70,"path":71,"stem":72},"API Route","\u002Fdocs\u002Fserver\u002Fapi-route","docs\u002F4.server\u002F1.api-route",{"title":74,"path":75,"stem":76},"Server Utils","\u002Fdocs\u002Fserver\u002Fserver-utils","docs\u002F4.server\u002F2.server-utils",{"id":78,"title":34,"body":79,"description":701,"extension":702,"links":703,"meta":704,"navigation":171,"path":35,"seo":706,"stem":36,"__hash__":707},"docs\u002Fdocs\u002F2.storage\u002F3.nitro.md",{"type":80,"value":81,"toc":692},"minimark",[82,99,104,398,409,413,418,493,497,595,599,671,675,688],[83,84,85,86,90,91,98],"p",{},"For deployments where you want full control over the storage driver. This mode uses Nitro's built-in ",[87,88,89],"code",{},"useStorage()",", which supports ",[92,93,97],"a",{"href":94,"rel":95},"https:\u002F\u002Funstorage.unjs.io\u002Fdrivers",[96],"nofollow","dozens of unstorage drivers",".",[100,101,103],"h2",{"id":102},"setup","Setup",[105,106,112],"pre",{"className":107,"code":108,"filename":109,"language":110,"meta":111,"style":111},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  modules: ['@adamkasper\u002Fnuxt-unleash'],\n\n  unleash: {\n    url: 'https:\u002F\u002Fyour-proxy.example.com\u002Fapi\u002Ffrontend',\n    token: 'your-frontend-token',\n    appName: 'my-app',\n    storage: 'nitro',\n  },\n\n  nitro: {\n    storage: {\n      unleash: {\n        driver: 'cloudflare-kv-binding',\n        binding: 'UNLEASH_CACHE',\n      },\n    },\n    devStorage: {\n      unleash: {\n        driver: 'memory',\n      },\n    },\n  },\n})\n","nuxt.config.ts","ts","",[87,113,114,138,166,173,184,202,219,236,253,259,264,274,283,293,310,327,333,339,349,358,374,379,384,389],{"__ignoreMap":111},[115,116,119,123,126,130,134],"span",{"class":117,"line":118},"line",1,[115,120,122],{"class":121},"s7zQu","export",[115,124,125],{"class":121}," default",[115,127,129],{"class":128},"s2Zo4"," defineNuxtConfig",[115,131,133],{"class":132},"sTEyZ","(",[115,135,137],{"class":136},"sMK4o","{\n",[115,139,141,145,148,151,154,158,160,163],{"class":117,"line":140},2,[115,142,144],{"class":143},"swJcz","  modules",[115,146,147],{"class":136},":",[115,149,150],{"class":132}," [",[115,152,153],{"class":136},"'",[115,155,157],{"class":156},"sfazB","@adamkasper\u002Fnuxt-unleash",[115,159,153],{"class":136},[115,161,162],{"class":132},"]",[115,164,165],{"class":136},",\n",[115,167,169],{"class":117,"line":168},3,[115,170,172],{"emptyLinePlaceholder":171},true,"\n",[115,174,176,179,181],{"class":117,"line":175},4,[115,177,178],{"class":143},"  unleash",[115,180,147],{"class":136},[115,182,183],{"class":136}," {\n",[115,185,187,190,192,195,198,200],{"class":117,"line":186},5,[115,188,189],{"class":143},"    url",[115,191,147],{"class":136},[115,193,194],{"class":136}," '",[115,196,197],{"class":156},"https:\u002F\u002Fyour-proxy.example.com\u002Fapi\u002Ffrontend",[115,199,153],{"class":136},[115,201,165],{"class":136},[115,203,205,208,210,212,215,217],{"class":117,"line":204},6,[115,206,207],{"class":143},"    token",[115,209,147],{"class":136},[115,211,194],{"class":136},[115,213,214],{"class":156},"your-frontend-token",[115,216,153],{"class":136},[115,218,165],{"class":136},[115,220,222,225,227,229,232,234],{"class":117,"line":221},7,[115,223,224],{"class":143},"    appName",[115,226,147],{"class":136},[115,228,194],{"class":136},[115,230,231],{"class":156},"my-app",[115,233,153],{"class":136},[115,235,165],{"class":136},[115,237,239,242,244,246,249,251],{"class":117,"line":238},8,[115,240,241],{"class":143},"    storage",[115,243,147],{"class":136},[115,245,194],{"class":136},[115,247,248],{"class":156},"nitro",[115,250,153],{"class":136},[115,252,165],{"class":136},[115,254,256],{"class":117,"line":255},9,[115,257,258],{"class":136},"  },\n",[115,260,262],{"class":117,"line":261},10,[115,263,172],{"emptyLinePlaceholder":171},[115,265,267,270,272],{"class":117,"line":266},11,[115,268,269],{"class":143},"  nitro",[115,271,147],{"class":136},[115,273,183],{"class":136},[115,275,277,279,281],{"class":117,"line":276},12,[115,278,241],{"class":143},[115,280,147],{"class":136},[115,282,183],{"class":136},[115,284,286,289,291],{"class":117,"line":285},13,[115,287,288],{"class":143},"      unleash",[115,290,147],{"class":136},[115,292,183],{"class":136},[115,294,296,299,301,303,306,308],{"class":117,"line":295},14,[115,297,298],{"class":143},"        driver",[115,300,147],{"class":136},[115,302,194],{"class":136},[115,304,305],{"class":156},"cloudflare-kv-binding",[115,307,153],{"class":136},[115,309,165],{"class":136},[115,311,313,316,318,320,323,325],{"class":117,"line":312},15,[115,314,315],{"class":143},"        binding",[115,317,147],{"class":136},[115,319,194],{"class":136},[115,321,322],{"class":156},"UNLEASH_CACHE",[115,324,153],{"class":136},[115,326,165],{"class":136},[115,328,330],{"class":117,"line":329},16,[115,331,332],{"class":136},"      },\n",[115,334,336],{"class":117,"line":335},17,[115,337,338],{"class":136},"    },\n",[115,340,342,345,347],{"class":117,"line":341},18,[115,343,344],{"class":143},"    devStorage",[115,346,147],{"class":136},[115,348,183],{"class":136},[115,350,352,354,356],{"class":117,"line":351},19,[115,353,288],{"class":143},[115,355,147],{"class":136},[115,357,183],{"class":136},[115,359,361,363,365,367,370,372],{"class":117,"line":360},20,[115,362,298],{"class":143},[115,364,147],{"class":136},[115,366,194],{"class":136},[115,368,369],{"class":156},"memory",[115,371,153],{"class":136},[115,373,165],{"class":136},[115,375,377],{"class":117,"line":376},21,[115,378,332],{"class":136},[115,380,382],{"class":117,"line":381},22,[115,383,338],{"class":136},[115,385,387],{"class":117,"line":386},23,[115,388,258],{"class":136},[115,390,392,395],{"class":117,"line":391},24,[115,393,394],{"class":136},"}",[115,396,397],{"class":132},")\n",[399,400,401,402,405,406,408],"tip",{},"Use ",[87,403,404],{},"devStorage"," to override the driver during local development. The ",[87,407,369],{}," driver works without any external services.",[100,410,412],{"id":411},"examples","Examples",[414,415,417],"h3",{"id":416},"cloudflare-kv-direct-binding","Cloudflare KV (direct binding)",[105,419,421],{"className":107,"code":420,"filename":109,"language":110,"meta":111,"style":111},"nitro: {\n  storage: {\n    unleash: {\n      driver: 'cloudflare-kv-binding',\n      binding: 'UNLEASH_CACHE',\n    },\n  },\n},\n",[87,422,423,432,441,450,465,480,484,488],{"__ignoreMap":111},[115,424,425,428,430],{"class":117,"line":118},[115,426,248],{"class":427},"sBMFI",[115,429,147],{"class":136},[115,431,183],{"class":136},[115,433,434,437,439],{"class":117,"line":140},[115,435,436],{"class":427},"  storage",[115,438,147],{"class":136},[115,440,183],{"class":136},[115,442,443,446,448],{"class":117,"line":168},[115,444,445],{"class":427},"    unleash",[115,447,147],{"class":136},[115,449,183],{"class":136},[115,451,452,455,457,459,461,463],{"class":117,"line":175},[115,453,454],{"class":427},"      driver",[115,456,147],{"class":136},[115,458,194],{"class":136},[115,460,305],{"class":156},[115,462,153],{"class":136},[115,464,165],{"class":136},[115,466,467,470,472,474,476,478],{"class":117,"line":186},[115,468,469],{"class":427},"      binding",[115,471,147],{"class":136},[115,473,194],{"class":136},[115,475,322],{"class":156},[115,477,153],{"class":136},[115,479,165],{"class":136},[115,481,482],{"class":117,"line":204},[115,483,338],{"class":136},[115,485,486],{"class":117,"line":221},[115,487,258],{"class":136},[115,489,490],{"class":117,"line":238},[115,491,492],{"class":136},"},\n",[414,494,496],{"id":495},"upstash-redis","Upstash Redis",[105,498,500],{"className":107,"code":499,"filename":109,"language":110,"meta":111,"style":111},"nitro: {\n  storage: {\n    unleash: {\n      driver: 'upstash',\n      url: process.env.UPSTASH_REDIS_REST_URL,\n      token: process.env.UPSTASH_REDIS_REST_TOKEN,\n    },\n  },\n},\n",[87,501,502,510,518,526,541,563,583,587,591],{"__ignoreMap":111},[115,503,504,506,508],{"class":117,"line":118},[115,505,248],{"class":427},[115,507,147],{"class":136},[115,509,183],{"class":136},[115,511,512,514,516],{"class":117,"line":140},[115,513,436],{"class":427},[115,515,147],{"class":136},[115,517,183],{"class":136},[115,519,520,522,524],{"class":117,"line":168},[115,521,445],{"class":427},[115,523,147],{"class":136},[115,525,183],{"class":136},[115,527,528,530,532,534,537,539],{"class":117,"line":175},[115,529,454],{"class":427},[115,531,147],{"class":136},[115,533,194],{"class":136},[115,535,536],{"class":156},"upstash",[115,538,153],{"class":136},[115,540,165],{"class":136},[115,542,543,546,548,551,553,556,558,561],{"class":117,"line":186},[115,544,545],{"class":427},"      url",[115,547,147],{"class":136},[115,549,550],{"class":132}," process",[115,552,98],{"class":136},[115,554,555],{"class":132},"env",[115,557,98],{"class":136},[115,559,560],{"class":132},"UPSTASH_REDIS_REST_URL",[115,562,165],{"class":136},[115,564,565,568,570,572,574,576,578,581],{"class":117,"line":204},[115,566,567],{"class":427},"      token",[115,569,147],{"class":136},[115,571,550],{"class":132},[115,573,98],{"class":136},[115,575,555],{"class":132},[115,577,98],{"class":136},[115,579,580],{"class":132},"UPSTASH_REDIS_REST_TOKEN",[115,582,165],{"class":136},[115,584,585],{"class":117,"line":221},[115,586,338],{"class":136},[115,588,589],{"class":117,"line":238},[115,590,258],{"class":136},[115,592,593],{"class":117,"line":255},[115,594,492],{"class":136},[414,596,598],{"id":597},"filesystem-development","Filesystem (development)",[105,600,602],{"className":107,"code":601,"filename":109,"language":110,"meta":111,"style":111},"nitro: {\n  storage: {\n    unleash: {\n      driver: 'fs',\n      base: '.\u002F.data\u002Funleash',\n    },\n  },\n},\n",[87,603,604,612,620,628,643,659,663,667],{"__ignoreMap":111},[115,605,606,608,610],{"class":117,"line":118},[115,607,248],{"class":427},[115,609,147],{"class":136},[115,611,183],{"class":136},[115,613,614,616,618],{"class":117,"line":140},[115,615,436],{"class":427},[115,617,147],{"class":136},[115,619,183],{"class":136},[115,621,622,624,626],{"class":117,"line":168},[115,623,445],{"class":427},[115,625,147],{"class":136},[115,627,183],{"class":136},[115,629,630,632,634,636,639,641],{"class":117,"line":175},[115,631,454],{"class":427},[115,633,147],{"class":136},[115,635,194],{"class":136},[115,637,638],{"class":156},"fs",[115,640,153],{"class":136},[115,642,165],{"class":136},[115,644,645,648,650,652,655,657],{"class":117,"line":186},[115,646,647],{"class":427},"      base",[115,649,147],{"class":136},[115,651,194],{"class":136},[115,653,654],{"class":156},".\u002F.data\u002Funleash",[115,656,153],{"class":136},[115,658,165],{"class":136},[115,660,661],{"class":117,"line":204},[115,662,338],{"class":136},[115,664,665],{"class":117,"line":221},[115,666,258],{"class":136},[115,668,669],{"class":117,"line":238},[115,670,492],{"class":136},[100,672,674],{"id":673},"when-to-use","When to Use",[676,677,678,682,685],"ul",{},[679,680,681],"li",{},"You need a specific storage driver not covered by NuxtHub",[679,683,684],{},"You deploy to Vercel, Netlify, or a custom platform",[679,686,687],{},"You want fine-grained control over caching behavior",[689,690,691],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":111,"searchDepth":140,"depth":140,"links":693},[694,695,700],{"id":102,"depth":140,"text":103},{"id":411,"depth":140,"text":412,"children":696},[697,698,699],{"id":416,"depth":168,"text":417},{"id":495,"depth":168,"text":496},{"id":597,"depth":168,"text":598},{"id":673,"depth":140,"text":674},"Use any Nitro\u002Funstorage driver as the storage backend.","md",null,{"icon":705},"i-ph-hard-drives-duotone",{"title":34,"description":701},"ONFNhTn-lOfH57svB1gmdIAyb2-1y8ykPhirdzaLha8",[709,711],{"title":30,"path":31,"stem":32,"description":710,"children":-1},"Use NuxtHub KV as the storage backend for feature flags.",{"title":38,"path":39,"stem":40,"description":712,"children":-1},"In-memory storage for development and simple Node.js deployments.",1775559945629]