[{"data":1,"prerenderedAt":634},["ShallowReactive",2],{"navigation-en":3,"page-\u002Fen\u002Fgetting-started\u002Finstallation":134,"\u002Fen\u002Fgetting-started\u002Finstallation-surround":629},[4],{"title":5,"path":6,"stem":7,"children":8,"page":26},"En","\u002Fen","en",[9,27,48,77,90,97],{"title":10,"path":11,"stem":12,"children":13,"page":26},"Getting Started","\u002Fen\u002Fgetting-started","en\u002F1.getting-started",[14,18,22],{"title":15,"path":16,"stem":17},"Introduction","\u002Fen\u002Fgetting-started\u002Fintroduction","en\u002F1.getting-started\u002F1.introduction",{"title":19,"path":20,"stem":21},"Installation","\u002Fen\u002Fgetting-started\u002Finstallation","en\u002F1.getting-started\u002F2.installation",{"title":23,"path":24,"stem":25},"Configuration Reference","\u002Fen\u002Fgetting-started\u002Fconfiguration","en\u002F1.getting-started\u002F3.configuration",false,{"title":28,"path":29,"stem":30,"children":31,"page":26},"Composables","\u002Fen\u002Fcomposables","en\u002F2.composables",[32,36,40,44],{"title":33,"path":34,"stem":35},"useGSheet","\u002Fen\u002Fcomposables\u002Fuse-gsheet","en\u002F2.composables\u002F1.use-gsheet",{"title":37,"path":38,"stem":39},"useGSheetAsObject","\u002Fen\u002Fcomposables\u002Fuse-gsheet-as-object","en\u002F2.composables\u002F2.use-gsheet-as-object",{"title":41,"path":42,"stem":43},"useGSheetRow","\u002Fen\u002Fcomposables\u002Fuse-gsheet-row","en\u002F2.composables\u002F3.use-gsheet-row",{"title":45,"path":46,"stem":47},"useGSheetWrite","\u002Fen\u002Fcomposables\u002Fuse-gsheet-write","en\u002F2.composables\u002F4.use-gsheet-write",{"title":49,"path":50,"stem":51,"children":52,"page":26},"Authentication Modes","\u002Fen\u002Fauth-modes","en\u002F3.auth-modes",[53,57,61,65,69,73],{"title":54,"path":55,"stem":56},"Authentication Modes Overview","\u002Fen\u002Fauth-modes\u002Foverview","en\u002F3.auth-modes\u002F1.overview",{"title":58,"path":59,"stem":60},"GViz Mode (Google Visualization API)","\u002Fen\u002Fauth-modes\u002Fgviz","en\u002F3.auth-modes\u002F2.gviz",{"title":62,"path":63,"stem":64},"CSV Export Mode","\u002Fen\u002Fauth-modes\u002Fcsv","en\u002F3.auth-modes\u002F3.csv",{"title":66,"path":67,"stem":68},"Google Apps Script Mode","\u002Fen\u002Fauth-modes\u002Fappscript","en\u002F3.auth-modes\u002F4.appscript",{"title":70,"path":71,"stem":72},"API Key Mode","\u002Fen\u002Fauth-modes\u002Fapikey","en\u002F3.auth-modes\u002F5.apikey",{"title":74,"path":75,"stem":76},"Service Account Mode","\u002Fen\u002Fauth-modes\u002Fservice-account","en\u002F3.auth-modes\u002F6.service-account",{"title":78,"path":79,"stem":80,"children":81,"page":26},"AI","\u002Fen\u002Fai","en\u002F4.ai",[82,86],{"title":83,"path":84,"stem":85},"Agent Skills (AI Integration)","\u002Fen\u002Fai\u002Fagent-skills","en\u002F4.ai\u002F1.agent-skills",{"title":87,"path":88,"stem":89},"Model Context Protocol (MCP)","\u002Fen\u002Fai\u002Fmcp","en\u002F4.ai\u002F2.mcp",{"title":91,"path":92,"stem":93,"children":94},"Demos","\u002Fen\u002Fdemos","en\u002F5.demos\u002Findex",[95],{"title":96,"path":92,"stem":93},"Live Demos",{"title":98,"path":99,"stem":100,"children":101,"page":26},"Tutorials","\u002Fen\u002Ftutorials","en\u002F6.tutorials",[102,106,110,114,118,122,126,130],{"title":103,"path":104,"stem":105},"Tutorials Overview","\u002Fen\u002Ftutorials\u002Foverview","en\u002F6.tutorials\u002F0.overview",{"title":107,"path":108,"stem":109},"Apps Script Web App Tutorial","\u002Fen\u002Ftutorials\u002Fappscript-tutorial","en\u002F6.tutorials\u002F1.appscript-tutorial",{"title":111,"path":112,"stem":113},"Complete Step-by-Step Tutorial","\u002Fen\u002Ftutorials\u002Fstep-by-step","en\u002F6.tutorials\u002F1.step-by-step",{"title":115,"path":116,"stem":117},"GViz SQL Analytics Tutorial","\u002Fen\u002Ftutorials\u002Fgviz-sql-tutorial","en\u002F6.tutorials\u002F2.gviz-sql-tutorial",{"title":119,"path":120,"stem":121},"CSV Product Catalog Tutorial","\u002Fen\u002Ftutorials\u002Fcsv-catalog-tutorial","en\u002F6.tutorials\u002F3.csv-catalog-tutorial",{"title":123,"path":124,"stem":125},"API Key Inventory Tutorial","\u002Fen\u002Ftutorials\u002Fapikey-tutorial","en\u002F6.tutorials\u002F4.apikey-tutorial",{"title":127,"path":128,"stem":129},"Service Account HR & Payroll Tutorial","\u002Fen\u002Ftutorials\u002Fservice-account-tutorial","en\u002F6.tutorials\u002F5.service-account-tutorial",{"title":131,"path":132,"stem":133},"Sheet Routing Map Tutorial","\u002Fen\u002Ftutorials\u002Fsheets-routing-tutorial","en\u002F6.tutorials\u002F6.sheets-routing-tutorial",{"id":135,"title":19,"body":136,"description":623,"extension":624,"icon":625,"links":625,"meta":626,"navigation":625,"path":20,"seo":627,"stem":21,"__hash__":628},"docs_en\u002Fen\u002F1.getting-started\u002F2.installation.md",{"type":137,"value":138,"toc":608},"minimark",[139,148,153,159,251,255,268,413,417,427,436,448,459,470,473,482,489,492,506,513,520,539,552,556,562,569,584,604],[140,141,142,143,147],"p",{},"Get started with ",[144,145,146],"code",{},"nuxt-gsheet"," by installing the package, registering the module in your Nuxt configuration, and setting up environment variables.",[149,150,152],"h2",{"id":151},"package-installation","Package Installation",[140,154,155,156,158],{},"Add ",[144,157,146],{}," to your project using your preferred package manager:",[160,161,162,193,208,222,237],"code-group",{},[163,164,170],"pre",{"className":165,"code":166,"filename":167,"language":168,"meta":169,"style":169},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxt module add gsheet\n","npx","bash","",[144,171,172],{"__ignoreMap":169},[173,174,177,180,184,187,190],"span",{"class":175,"line":176},"line",1,[173,178,167],{"class":179},"sBMFI",[173,181,183],{"class":182},"sfazB"," nuxt",[173,185,186],{"class":182}," module",[173,188,189],{"class":182}," add",[173,191,192],{"class":182}," gsheet\n",[163,194,197],{"className":165,"code":195,"filename":196,"language":168,"meta":169,"style":169},"bun add nuxt-gsheet\n","bun",[144,198,199],{"__ignoreMap":169},[173,200,201,203,205],{"class":175,"line":176},[173,202,196],{"class":179},[173,204,189],{"class":182},[173,206,207],{"class":182}," nuxt-gsheet\n",[163,209,212],{"className":165,"code":210,"filename":211,"language":168,"meta":169,"style":169},"pnpm add nuxt-gsheet\n","pnpm",[144,213,214],{"__ignoreMap":169},[173,215,216,218,220],{"class":175,"line":176},[173,217,211],{"class":179},[173,219,189],{"class":182},[173,221,207],{"class":182},[163,223,226],{"className":165,"code":224,"filename":225,"language":168,"meta":169,"style":169},"npm install nuxt-gsheet\n","npm",[144,227,228],{"__ignoreMap":169},[173,229,230,232,235],{"class":175,"line":176},[173,231,225],{"class":179},[173,233,234],{"class":182}," install",[173,236,207],{"class":182},[163,238,241],{"className":165,"code":239,"filename":240,"language":168,"meta":169,"style":169},"yarn add nuxt-gsheet\n","yarn",[144,242,243],{"__ignoreMap":169},[173,244,245,247,249],{"class":175,"line":176},[173,246,240],{"class":179},[173,248,189],{"class":182},[173,250,207],{"class":182},[149,252,254],{"id":253},"registering-the-module","Registering the Module",[140,256,155,257,259,260,263,264,267],{},[144,258,146],{}," to the ",[144,261,262],{},"modules"," array in your ",[144,265,266],{},"nuxt.config.ts",":",[163,269,273],{"className":270,"code":271,"filename":266,"language":272,"meta":169,"style":169},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  modules: [\n    'nuxt-gsheet'\n  ],\n\n  gsheet: {\n    \u002F\u002F Module default options (optional)\n    cache: {\n      enabled: true,\n      maxAge: 300 \u002F\u002F 5 minutes cache TTL\n    }\n  }\n})\n","ts",[144,274,275,296,308,319,328,335,346,353,363,377,392,398,404],{"__ignoreMap":169},[173,276,277,281,284,288,292],{"class":175,"line":176},[173,278,280],{"class":279},"s7zQu","export",[173,282,283],{"class":279}," default",[173,285,287],{"class":286},"s2Zo4"," defineNuxtConfig",[173,289,291],{"class":290},"sTEyZ","(",[173,293,295],{"class":294},"sMK4o","{\n",[173,297,299,303,305],{"class":175,"line":298},2,[173,300,302],{"class":301},"swJcz","  modules",[173,304,267],{"class":294},[173,306,307],{"class":290}," [\n",[173,309,311,314,316],{"class":175,"line":310},3,[173,312,313],{"class":294},"    '",[173,315,146],{"class":182},[173,317,318],{"class":294},"'\n",[173,320,322,325],{"class":175,"line":321},4,[173,323,324],{"class":290},"  ]",[173,326,327],{"class":294},",\n",[173,329,331],{"class":175,"line":330},5,[173,332,334],{"emptyLinePlaceholder":333},true,"\n",[173,336,338,341,343],{"class":175,"line":337},6,[173,339,340],{"class":301},"  gsheet",[173,342,267],{"class":294},[173,344,345],{"class":294}," {\n",[173,347,349],{"class":175,"line":348},7,[173,350,352],{"class":351},"sHwdD","    \u002F\u002F Module default options (optional)\n",[173,354,356,359,361],{"class":175,"line":355},8,[173,357,358],{"class":301},"    cache",[173,360,267],{"class":294},[173,362,345],{"class":294},[173,364,366,369,371,375],{"class":175,"line":365},9,[173,367,368],{"class":301},"      enabled",[173,370,267],{"class":294},[173,372,374],{"class":373},"sfNiH"," true",[173,376,327],{"class":294},[173,378,380,383,385,389],{"class":175,"line":379},10,[173,381,382],{"class":301},"      maxAge",[173,384,267],{"class":294},[173,386,388],{"class":387},"sbssI"," 300",[173,390,391],{"class":351}," \u002F\u002F 5 minutes cache TTL\n",[173,393,395],{"class":175,"line":394},11,[173,396,397],{"class":294},"    }\n",[173,399,401],{"class":175,"line":400},12,[173,402,403],{"class":294},"  }\n",[173,405,407,410],{"class":175,"line":406},13,[173,408,409],{"class":294},"}",[173,411,412],{"class":290},")\n",[149,414,416],{"id":415},"environment-configuration","Environment Configuration",[140,418,419,420,423,424,426],{},"Configure your Google Sheets credentials or spreadsheet settings in your ",[144,421,422],{},".env"," file at the root of your project. ",[144,425,146],{}," automatically detects the authentication mode based on the environment variables defined below.",[428,429,431,432,435],"h3",{"id":430},"option-1-google-apps-script-mode-appscript","Option 1: Google Apps Script Mode (",[144,433,434],{},"appscript",")",[140,437,438,439,443,444,447],{},"Use Google Apps Script to proxy requests without creating Google Cloud Platform (GCP) credentials. Supports both ",[440,441,442],"strong",{},"Read"," and ",[440,445,446],{},"Write"," operations.",[163,449,453],{"className":450,"code":451,"filename":422,"language":452,"meta":169,"style":169},"language-env shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","GSHEET_APPSCRIPT_URL=https:\u002F\u002Fscript.google.com\u002Fmacros\u002Fs\u002FAKfycb...\u002Fexec\n","env",[144,454,455],{"__ignoreMap":169},[173,456,457],{"class":175,"line":176},[173,458,451],{},[428,460,462,463,466,467,435],{"id":461},"option-2-public-spreadsheet-modes-gviz-or-csv","Option 2: Public Spreadsheet Modes (",[144,464,465],{},"gviz"," or ",[144,468,469],{},"csv",[140,471,472],{},"Use GViz or direct CSV export for zero-config, read-only access to public spreadsheets. No API keys or GCP credentials required.",[163,474,476],{"className":450,"code":475,"filename":422,"language":452,"meta":169,"style":169},"GSHEET_SPREADSHEET_ID=your-google-spreadsheet-id\n",[144,477,478],{"__ignoreMap":169},[173,479,480],{"class":175,"line":176},[173,481,475],{},[428,483,485,486,435],{"id":484},"option-3-api-key-mode-apikey","Option 3: API Key Mode (",[144,487,488],{},"apikey",[140,490,491],{},"Use standard Google Sheets API v4 for public spreadsheets with custom quota control.",[163,493,495],{"className":450,"code":494,"filename":422,"language":452,"meta":169,"style":169},"GSHEET_SPREADSHEET_ID=your-google-spreadsheet-id\nGSHEET_API_KEY=AIzaSy...\n",[144,496,497,501],{"__ignoreMap":169},[173,498,499],{"class":175,"line":176},[173,500,475],{},[173,502,503],{"class":175,"line":298},[173,504,505],{},"GSHEET_API_KEY=AIzaSy...\n",[428,507,509,510,435],{"id":508},"option-4-service-account-mode-service-account","Option 4: Service Account Mode (",[144,511,512],{},"service-account",[140,514,515,516,443,518,447],{},"Use GCP Service Account credentials for private Google Sheets. Supports ",[440,517,442],{},[440,519,446],{},[163,521,523],{"className":450,"code":522,"filename":422,"language":452,"meta":169,"style":169},"GSHEET_SPREADSHEET_ID=your-google-spreadsheet-id\nGSHEET_CLIENT_EMAIL=your-service-account@your-project.iam.gserviceaccount.com\nGSHEET_PRIVATE_KEY=\"-----BEGIN PRIVATE KEY-----\\nYOUR_PRIVATE_KEY_HERE\\n-----END PRIVATE KEY-----\\n\"\n",[144,524,525,529,534],{"__ignoreMap":169},[173,526,527],{"class":175,"line":176},[173,528,475],{},[173,530,531],{"class":175,"line":298},[173,532,533],{},"GSHEET_CLIENT_EMAIL=your-service-account@your-project.iam.gserviceaccount.com\n",[173,535,536],{"class":175,"line":310},[173,537,538],{},"GSHEET_PRIVATE_KEY=\"-----BEGIN PRIVATE KEY-----\\nYOUR_PRIVATE_KEY_HERE\\n-----END PRIVATE KEY-----\\n\"\n",[540,541,542],"important",{},[140,543,544,545,547,548,551],{},"Always keep your ",[144,546,422],{}," file in ",[144,549,550],{},".gitignore",". Never commit private keys or API credentials to version control.",[149,553,555],{"id":554},"verifying-your-setup","Verifying Your Setup",[140,557,558,559,561],{},"To verify that ",[144,560,146],{}," is set up correctly:",[563,564,565],"ol",{},[566,567,568],"li",{},"Start your local Nuxt development server:",[163,570,572],{"className":165,"code":571,"language":168,"meta":169,"style":169},"bun run dev\n",[144,573,574],{"__ignoreMap":169},[173,575,576,578,581],{"class":175,"line":176},[173,577,196],{"class":179},[173,579,580],{"class":182}," run",[173,582,583],{"class":182}," dev\n",[563,585,586,597],{"start":298},[566,587,588,589,592,593,596],{},"Open your browser and launch ",[440,590,591],{},"Nuxt DevTools"," (",[144,594,595],{},"Shift + Alt + D"," or click the Nuxt icon at the bottom of the screen).",[566,598,599,600,603],{},"Look for the ",[440,601,602],{},"Google Sheets"," tab in the DevTools menu. If visible, the module has loaded successfully.",[605,606,607],"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 pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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":169,"searchDepth":176,"depth":298,"links":609},[610,611,612,622],{"id":151,"depth":298,"text":152},{"id":253,"depth":298,"text":254},{"id":415,"depth":298,"text":416,"children":613},[614,616,618,620],{"id":430,"depth":310,"text":615},"Option 1: Google Apps Script Mode (appscript)",{"id":461,"depth":310,"text":617},"Option 2: Public Spreadsheet Modes (gviz or csv)",{"id":484,"depth":310,"text":619},"Option 3: API Key Mode (apikey)",{"id":508,"depth":310,"text":621},"Option 4: Service Account Mode (service-account)",{"id":554,"depth":298,"text":555},"Install nuxt-gsheet package, register the module, and configure environment variables.","md",null,{},{"title":19,"description":623},"P6Tr1uCQDDPAJzoxaAsPjFX_AGXRinmqjoIz3FKj3_8",[630,632],{"title":15,"path":16,"stem":17,"description":631,"children":-1},"Overview of nuxt-gsheet architecture, features, and benefits.",{"title":23,"path":24,"stem":25,"description":633,"children":-1},"Full reference for nuxt.config.ts module options, TypeScript types, and sheet routing maps.",1786088228824]