[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-directus-rstore-monospace":3,"mdc-7gxb1x-key":30,"related-org-directus-rstore-monospace":758,"related-repo-directus-rstore-monospace":866},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":19,"repoUrl":20,"updatedAt":21,"license":22,"forks":23,"topics":24,"repo":25,"sourceUrl":28,"mdContent":29},"rstore-monospace","integrate rstore with Monospace REST APIs","Use when integrating rstore with Monospace REST and OpenAPI helpers, generated Monospace collections, Monospace REST query options, primary key overrides, createMonospaceRestClient, createMonospaceRstorePlugin, createMonospaceQuery, and schema generation from remote or local OpenAPI documents; also use before writing custom Monospace REST CRUD around rstore collections.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"directus","Directus","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fdirectus.png",[12,16],{"name":13,"slug":14,"type":15},"REST API","rest-api","tag",{"name":17,"slug":18,"type":15},"OpenAPI","openapi",425,"https:\u002F\u002Fgithub.com\u002Fdirectus\u002Frstore","2026-07-12T07:51:08.612664",null,19,[],{"repoUrl":20,"stars":19,"forks":23,"topics":26,"description":27},[],"The Reactive Data Store for Vue and Nuxt developers.","https:\u002F\u002Fgithub.com\u002Fdirectus\u002Frstore\u002Ftree\u002FHEAD\u002Fpackages\u002Fmonospace\u002Fskills\u002Frstore-monospace","---\nname: rstore-monospace\ndescription: \"Use when integrating rstore with Monospace REST and OpenAPI helpers, generated Monospace collections, Monospace REST query options, primary key overrides, createMonospaceRestClient, createMonospaceRstorePlugin, createMonospaceQuery, and schema generation from remote or local OpenAPI documents; also use before writing custom Monospace REST CRUD around rstore collections.\"\n---\n\n# Rstore Monospace\n\nUse `@rstore\u002Fmonospace` as the shared Monospace adapter layer for OpenAPI-generated rstore collections and REST-backed runtime CRUD behavior.\n\n## Core APIs\n\n| Area | API |\n| --- | --- |\n| Runtime client | `createMonospaceRestClient({ url, project, apiKey?, fetch? })` |\n| Runtime plugin | `createMonospaceRstorePlugin({ url?, project?, apiKey?, client?, scopeId? })` |\n| Query mapping | `createMonospaceQuery(findOptions, overrides?)` |\n| Query serialization | `serializeMonospaceQuery(query)` |\n| Mutation payloads | `stripPrimaryKeys(item, primaryKeys)` |\n| Collection metadata | `DEFAULT_MONOSPACE_SCOPE_ID`, `getMonospacePrimaryKeys`, `getMonospaceCollectionName` |\n| Schema loading | `loadMonospaceCollections({ url?, project?, schemaApiKey?, input?, metadataInput?, primaryKeys?, scopeId? })` |\n| Schema building | `buildMonospaceCollections({ document, metadata, primaryKeys?, scopeId })` |\n| Code generation | `generateCollectionsTemplate`, `generateItemsTemplate`, `generateTypedCollectionsTemplate`, `generateConfigTemplate`, `generateViteDeclarations` |\n\n## Workflow\n\n1. Load the Monospace OpenAPI document and the system schema metadata (meta collections read through the items API) from a remote project or local JSON files.\n2. Generate rstore collections from `x-monospace-mappings`, `*CollectionOutput` schemas, primary indexes, and FK constraints.\n3. Create a runtime REST client with `createMonospaceRestClient`.\n4. Register `createMonospaceRstorePlugin` in the store plugins list.\n5. Query and mutate through rstore collection APIs instead of component-level REST calls.\n\n## Schema Loading\n\n- Generation requires both the OpenAPI document and the schema metadata (system meta collections: `MonospaceCollection`, `MonospacePrimitiveField`, `MonospaceSingleRelationField`, `MonospaceSingleConstraintField`, `MonospaceIndex`, `MonospaceIndexField`).\n- Remote schema loading requires `url` and `project`; metadata queries use explicit `fields` and `limit=0` (unlimited).\n- Fully local loading uses `input` (OpenAPI JSON) plus `metadataInput` (metadata snapshot keyed by meta collection name) and can skip remote schema credentials.\n- `schemaApiKey` is only for build-time schema loading and needs the `openApiSchema:read` and `dataModel:read` entitlements.\n- Primary keys come from each collection's primary index (ordered, composite supported); `primaryKeys` is an override only, and a collection without a primary index and without an override fails generation.\n- Relations join on the real FK constraint columns (`on` maps target columns to source FK columns).\n\n## Runtime REST Behavior\n\n- The runtime client calls endpoints under `\u002Fapi\u002F{project}\u002Fitems\u002F{collection}`.\n- Supported item operations include read one, read many, create one, create many, update one, update many, delete one, and delete many.\n- Bulk update and delete require a non-empty filter query.\n- Primary key fields are stripped from update payloads before REST mutation calls.\n- Monospace REST errors are mapped to typed errors such as auth, permission, validation, and not-found errors.\n\n## Query Behavior\n\n- Pass Monospace REST query options in rstore find options: `fields`, `filter`, `sort`, `limit`, `offset`, and `params`.\n- `pageIndex` and `pageSize` map to `offset` and `limit` when explicit pagination is not provided.\n- `createMonospaceQuery` merges adapter `params`, top-level find options, and optional overrides.\n- `serializeMonospaceQuery` converts nested query options into URL search parameters.\n\n## Guardrails\n\n1. Keep `schemaApiKey` build\u002Fserver-side; it is for OpenAPI loading.\n2. Treat `runtimeApiKey` or `apiKey` as emitted runtime\u002Fclient code when configured.\n3. Prefer the generated rstore plugin over ad hoc Monospace REST calls for generated collections.\n4. Use `rstore-vue` for query, live query, form, and cache semantics.\n5. Use `rstore-vite-monospace` or `rstore-nuxt-monospace` for framework wiring.\n",{"data":31,"body":32},{"name":4,"description":6},{"type":33,"children":34},"root",[35,43,58,65,289,295,356,362,523,529,564,570,680,686],{"type":36,"tag":37,"props":38,"children":39},"element","h1",{"id":4},[40],{"type":41,"value":42},"text","Rstore Monospace",{"type":36,"tag":44,"props":45,"children":46},"p",{},[47,49,56],{"type":41,"value":48},"Use ",{"type":36,"tag":50,"props":51,"children":53},"code",{"className":52},[],[54],{"type":41,"value":55},"@rstore\u002Fmonospace",{"type":41,"value":57}," as the shared Monospace adapter layer for OpenAPI-generated rstore collections and REST-backed runtime CRUD behavior.",{"type":36,"tag":59,"props":60,"children":62},"h2",{"id":61},"core-apis",[63],{"type":41,"value":64},"Core APIs",{"type":36,"tag":66,"props":67,"children":68},"table",{},[69,88],{"type":36,"tag":70,"props":71,"children":72},"thead",{},[73],{"type":36,"tag":74,"props":75,"children":76},"tr",{},[77,83],{"type":36,"tag":78,"props":79,"children":80},"th",{},[81],{"type":41,"value":82},"Area",{"type":36,"tag":78,"props":84,"children":85},{},[86],{"type":41,"value":87},"API",{"type":36,"tag":89,"props":90,"children":91},"tbody",{},[92,110,127,144,161,178,210,227,244],{"type":36,"tag":74,"props":93,"children":94},{},[95,101],{"type":36,"tag":96,"props":97,"children":98},"td",{},[99],{"type":41,"value":100},"Runtime client",{"type":36,"tag":96,"props":102,"children":103},{},[104],{"type":36,"tag":50,"props":105,"children":107},{"className":106},[],[108],{"type":41,"value":109},"createMonospaceRestClient({ url, project, apiKey?, fetch? })",{"type":36,"tag":74,"props":111,"children":112},{},[113,118],{"type":36,"tag":96,"props":114,"children":115},{},[116],{"type":41,"value":117},"Runtime plugin",{"type":36,"tag":96,"props":119,"children":120},{},[121],{"type":36,"tag":50,"props":122,"children":124},{"className":123},[],[125],{"type":41,"value":126},"createMonospaceRstorePlugin({ url?, project?, apiKey?, client?, scopeId? })",{"type":36,"tag":74,"props":128,"children":129},{},[130,135],{"type":36,"tag":96,"props":131,"children":132},{},[133],{"type":41,"value":134},"Query mapping",{"type":36,"tag":96,"props":136,"children":137},{},[138],{"type":36,"tag":50,"props":139,"children":141},{"className":140},[],[142],{"type":41,"value":143},"createMonospaceQuery(findOptions, overrides?)",{"type":36,"tag":74,"props":145,"children":146},{},[147,152],{"type":36,"tag":96,"props":148,"children":149},{},[150],{"type":41,"value":151},"Query serialization",{"type":36,"tag":96,"props":153,"children":154},{},[155],{"type":36,"tag":50,"props":156,"children":158},{"className":157},[],[159],{"type":41,"value":160},"serializeMonospaceQuery(query)",{"type":36,"tag":74,"props":162,"children":163},{},[164,169],{"type":36,"tag":96,"props":165,"children":166},{},[167],{"type":41,"value":168},"Mutation payloads",{"type":36,"tag":96,"props":170,"children":171},{},[172],{"type":36,"tag":50,"props":173,"children":175},{"className":174},[],[176],{"type":41,"value":177},"stripPrimaryKeys(item, primaryKeys)",{"type":36,"tag":74,"props":179,"children":180},{},[181,186],{"type":36,"tag":96,"props":182,"children":183},{},[184],{"type":41,"value":185},"Collection metadata",{"type":36,"tag":96,"props":187,"children":188},{},[189,195,197,203,204],{"type":36,"tag":50,"props":190,"children":192},{"className":191},[],[193],{"type":41,"value":194},"DEFAULT_MONOSPACE_SCOPE_ID",{"type":41,"value":196},", ",{"type":36,"tag":50,"props":198,"children":200},{"className":199},[],[201],{"type":41,"value":202},"getMonospacePrimaryKeys",{"type":41,"value":196},{"type":36,"tag":50,"props":205,"children":207},{"className":206},[],[208],{"type":41,"value":209},"getMonospaceCollectionName",{"type":36,"tag":74,"props":211,"children":212},{},[213,218],{"type":36,"tag":96,"props":214,"children":215},{},[216],{"type":41,"value":217},"Schema loading",{"type":36,"tag":96,"props":219,"children":220},{},[221],{"type":36,"tag":50,"props":222,"children":224},{"className":223},[],[225],{"type":41,"value":226},"loadMonospaceCollections({ url?, project?, schemaApiKey?, input?, metadataInput?, primaryKeys?, scopeId? })",{"type":36,"tag":74,"props":228,"children":229},{},[230,235],{"type":36,"tag":96,"props":231,"children":232},{},[233],{"type":41,"value":234},"Schema building",{"type":36,"tag":96,"props":236,"children":237},{},[238],{"type":36,"tag":50,"props":239,"children":241},{"className":240},[],[242],{"type":41,"value":243},"buildMonospaceCollections({ document, metadata, primaryKeys?, scopeId })",{"type":36,"tag":74,"props":245,"children":246},{},[247,252],{"type":36,"tag":96,"props":248,"children":249},{},[250],{"type":41,"value":251},"Code generation",{"type":36,"tag":96,"props":253,"children":254},{},[255,261,262,268,269,275,276,282,283],{"type":36,"tag":50,"props":256,"children":258},{"className":257},[],[259],{"type":41,"value":260},"generateCollectionsTemplate",{"type":41,"value":196},{"type":36,"tag":50,"props":263,"children":265},{"className":264},[],[266],{"type":41,"value":267},"generateItemsTemplate",{"type":41,"value":196},{"type":36,"tag":50,"props":270,"children":272},{"className":271},[],[273],{"type":41,"value":274},"generateTypedCollectionsTemplate",{"type":41,"value":196},{"type":36,"tag":50,"props":277,"children":279},{"className":278},[],[280],{"type":41,"value":281},"generateConfigTemplate",{"type":41,"value":196},{"type":36,"tag":50,"props":284,"children":286},{"className":285},[],[287],{"type":41,"value":288},"generateViteDeclarations",{"type":36,"tag":59,"props":290,"children":292},{"id":291},"workflow",[293],{"type":41,"value":294},"Workflow",{"type":36,"tag":296,"props":297,"children":298},"ol",{},[299,305,325,338,351],{"type":36,"tag":300,"props":301,"children":302},"li",{},[303],{"type":41,"value":304},"Load the Monospace OpenAPI document and the system schema metadata (meta collections read through the items API) from a remote project or local JSON files.",{"type":36,"tag":300,"props":306,"children":307},{},[308,310,316,317,323],{"type":41,"value":309},"Generate rstore collections from ",{"type":36,"tag":50,"props":311,"children":313},{"className":312},[],[314],{"type":41,"value":315},"x-monospace-mappings",{"type":41,"value":196},{"type":36,"tag":50,"props":318,"children":320},{"className":319},[],[321],{"type":41,"value":322},"*CollectionOutput",{"type":41,"value":324}," schemas, primary indexes, and FK constraints.",{"type":36,"tag":300,"props":326,"children":327},{},[328,330,336],{"type":41,"value":329},"Create a runtime REST client with ",{"type":36,"tag":50,"props":331,"children":333},{"className":332},[],[334],{"type":41,"value":335},"createMonospaceRestClient",{"type":41,"value":337},".",{"type":36,"tag":300,"props":339,"children":340},{},[341,343,349],{"type":41,"value":342},"Register ",{"type":36,"tag":50,"props":344,"children":346},{"className":345},[],[347],{"type":41,"value":348},"createMonospaceRstorePlugin",{"type":41,"value":350}," in the store plugins list.",{"type":36,"tag":300,"props":352,"children":353},{},[354],{"type":41,"value":355},"Query and mutate through rstore collection APIs instead of component-level REST calls.",{"type":36,"tag":59,"props":357,"children":359},{"id":358},"schema-loading",[360],{"type":41,"value":361},"Schema Loading",{"type":36,"tag":363,"props":364,"children":365},"ul",{},[366,414,450,471,497,510],{"type":36,"tag":300,"props":367,"children":368},{},[369,371,377,378,384,385,391,392,398,399,405,406,412],{"type":41,"value":370},"Generation requires both the OpenAPI document and the schema metadata (system meta collections: ",{"type":36,"tag":50,"props":372,"children":374},{"className":373},[],[375],{"type":41,"value":376},"MonospaceCollection",{"type":41,"value":196},{"type":36,"tag":50,"props":379,"children":381},{"className":380},[],[382],{"type":41,"value":383},"MonospacePrimitiveField",{"type":41,"value":196},{"type":36,"tag":50,"props":386,"children":388},{"className":387},[],[389],{"type":41,"value":390},"MonospaceSingleRelationField",{"type":41,"value":196},{"type":36,"tag":50,"props":393,"children":395},{"className":394},[],[396],{"type":41,"value":397},"MonospaceSingleConstraintField",{"type":41,"value":196},{"type":36,"tag":50,"props":400,"children":402},{"className":401},[],[403],{"type":41,"value":404},"MonospaceIndex",{"type":41,"value":196},{"type":36,"tag":50,"props":407,"children":409},{"className":408},[],[410],{"type":41,"value":411},"MonospaceIndexField",{"type":41,"value":413},").",{"type":36,"tag":300,"props":415,"children":416},{},[417,419,425,427,433,435,441,442,448],{"type":41,"value":418},"Remote schema loading requires ",{"type":36,"tag":50,"props":420,"children":422},{"className":421},[],[423],{"type":41,"value":424},"url",{"type":41,"value":426}," and ",{"type":36,"tag":50,"props":428,"children":430},{"className":429},[],[431],{"type":41,"value":432},"project",{"type":41,"value":434},"; metadata queries use explicit ",{"type":36,"tag":50,"props":436,"children":438},{"className":437},[],[439],{"type":41,"value":440},"fields",{"type":41,"value":426},{"type":36,"tag":50,"props":443,"children":445},{"className":444},[],[446],{"type":41,"value":447},"limit=0",{"type":41,"value":449}," (unlimited).",{"type":36,"tag":300,"props":451,"children":452},{},[453,455,461,463,469],{"type":41,"value":454},"Fully local loading uses ",{"type":36,"tag":50,"props":456,"children":458},{"className":457},[],[459],{"type":41,"value":460},"input",{"type":41,"value":462}," (OpenAPI JSON) plus ",{"type":36,"tag":50,"props":464,"children":466},{"className":465},[],[467],{"type":41,"value":468},"metadataInput",{"type":41,"value":470}," (metadata snapshot keyed by meta collection name) and can skip remote schema credentials.",{"type":36,"tag":300,"props":472,"children":473},{},[474,480,482,488,489,495],{"type":36,"tag":50,"props":475,"children":477},{"className":476},[],[478],{"type":41,"value":479},"schemaApiKey",{"type":41,"value":481}," is only for build-time schema loading and needs the ",{"type":36,"tag":50,"props":483,"children":485},{"className":484},[],[486],{"type":41,"value":487},"openApiSchema:read",{"type":41,"value":426},{"type":36,"tag":50,"props":490,"children":492},{"className":491},[],[493],{"type":41,"value":494},"dataModel:read",{"type":41,"value":496}," entitlements.",{"type":36,"tag":300,"props":498,"children":499},{},[500,502,508],{"type":41,"value":501},"Primary keys come from each collection's primary index (ordered, composite supported); ",{"type":36,"tag":50,"props":503,"children":505},{"className":504},[],[506],{"type":41,"value":507},"primaryKeys",{"type":41,"value":509}," is an override only, and a collection without a primary index and without an override fails generation.",{"type":36,"tag":300,"props":511,"children":512},{},[513,515,521],{"type":41,"value":514},"Relations join on the real FK constraint columns (",{"type":36,"tag":50,"props":516,"children":518},{"className":517},[],[519],{"type":41,"value":520},"on",{"type":41,"value":522}," maps target columns to source FK columns).",{"type":36,"tag":59,"props":524,"children":526},{"id":525},"runtime-rest-behavior",[527],{"type":41,"value":528},"Runtime REST Behavior",{"type":36,"tag":363,"props":530,"children":531},{},[532,544,549,554,559],{"type":36,"tag":300,"props":533,"children":534},{},[535,537,543],{"type":41,"value":536},"The runtime client calls endpoints under ",{"type":36,"tag":50,"props":538,"children":540},{"className":539},[],[541],{"type":41,"value":542},"\u002Fapi\u002F{project}\u002Fitems\u002F{collection}",{"type":41,"value":337},{"type":36,"tag":300,"props":545,"children":546},{},[547],{"type":41,"value":548},"Supported item operations include read one, read many, create one, create many, update one, update many, delete one, and delete many.",{"type":36,"tag":300,"props":550,"children":551},{},[552],{"type":41,"value":553},"Bulk update and delete require a non-empty filter query.",{"type":36,"tag":300,"props":555,"children":556},{},[557],{"type":41,"value":558},"Primary key fields are stripped from update payloads before REST mutation calls.",{"type":36,"tag":300,"props":560,"children":561},{},[562],{"type":41,"value":563},"Monospace REST errors are mapped to typed errors such as auth, permission, validation, and not-found errors.",{"type":36,"tag":59,"props":565,"children":567},{"id":566},"query-behavior",[568],{"type":41,"value":569},"Query Behavior",{"type":36,"tag":363,"props":571,"children":572},{},[573,620,651,669],{"type":36,"tag":300,"props":574,"children":575},{},[576,578,583,584,590,591,597,598,604,605,611,613,619],{"type":41,"value":577},"Pass Monospace REST query options in rstore find options: ",{"type":36,"tag":50,"props":579,"children":581},{"className":580},[],[582],{"type":41,"value":440},{"type":41,"value":196},{"type":36,"tag":50,"props":585,"children":587},{"className":586},[],[588],{"type":41,"value":589},"filter",{"type":41,"value":196},{"type":36,"tag":50,"props":592,"children":594},{"className":593},[],[595],{"type":41,"value":596},"sort",{"type":41,"value":196},{"type":36,"tag":50,"props":599,"children":601},{"className":600},[],[602],{"type":41,"value":603},"limit",{"type":41,"value":196},{"type":36,"tag":50,"props":606,"children":608},{"className":607},[],[609],{"type":41,"value":610},"offset",{"type":41,"value":612},", and ",{"type":36,"tag":50,"props":614,"children":616},{"className":615},[],[617],{"type":41,"value":618},"params",{"type":41,"value":337},{"type":36,"tag":300,"props":621,"children":622},{},[623,629,630,636,638,643,644,649],{"type":36,"tag":50,"props":624,"children":626},{"className":625},[],[627],{"type":41,"value":628},"pageIndex",{"type":41,"value":426},{"type":36,"tag":50,"props":631,"children":633},{"className":632},[],[634],{"type":41,"value":635},"pageSize",{"type":41,"value":637}," map to ",{"type":36,"tag":50,"props":639,"children":641},{"className":640},[],[642],{"type":41,"value":610},{"type":41,"value":426},{"type":36,"tag":50,"props":645,"children":647},{"className":646},[],[648],{"type":41,"value":603},{"type":41,"value":650}," when explicit pagination is not provided.",{"type":36,"tag":300,"props":652,"children":653},{},[654,660,662,667],{"type":36,"tag":50,"props":655,"children":657},{"className":656},[],[658],{"type":41,"value":659},"createMonospaceQuery",{"type":41,"value":661}," merges adapter ",{"type":36,"tag":50,"props":663,"children":665},{"className":664},[],[666],{"type":41,"value":618},{"type":41,"value":668},", top-level find options, and optional overrides.",{"type":36,"tag":300,"props":670,"children":671},{},[672,678],{"type":36,"tag":50,"props":673,"children":675},{"className":674},[],[676],{"type":41,"value":677},"serializeMonospaceQuery",{"type":41,"value":679}," converts nested query options into URL search parameters.",{"type":36,"tag":59,"props":681,"children":683},{"id":682},"guardrails",[684],{"type":41,"value":685},"Guardrails",{"type":36,"tag":296,"props":687,"children":688},{},[689,701,722,727,739],{"type":36,"tag":300,"props":690,"children":691},{},[692,694,699],{"type":41,"value":693},"Keep ",{"type":36,"tag":50,"props":695,"children":697},{"className":696},[],[698],{"type":41,"value":479},{"type":41,"value":700}," build\u002Fserver-side; it is for OpenAPI loading.",{"type":36,"tag":300,"props":702,"children":703},{},[704,706,712,714,720],{"type":41,"value":705},"Treat ",{"type":36,"tag":50,"props":707,"children":709},{"className":708},[],[710],{"type":41,"value":711},"runtimeApiKey",{"type":41,"value":713}," or ",{"type":36,"tag":50,"props":715,"children":717},{"className":716},[],[718],{"type":41,"value":719},"apiKey",{"type":41,"value":721}," as emitted runtime\u002Fclient code when configured.",{"type":36,"tag":300,"props":723,"children":724},{},[725],{"type":41,"value":726},"Prefer the generated rstore plugin over ad hoc Monospace REST calls for generated collections.",{"type":36,"tag":300,"props":728,"children":729},{},[730,731,737],{"type":41,"value":48},{"type":36,"tag":50,"props":732,"children":734},{"className":733},[],[735],{"type":41,"value":736},"rstore-vue",{"type":41,"value":738}," for query, live query, form, and cache semantics.",{"type":36,"tag":300,"props":740,"children":741},{},[742,743,749,750,756],{"type":41,"value":48},{"type":36,"tag":50,"props":744,"children":746},{"className":745},[],[747],{"type":41,"value":748},"rstore-vite-monospace",{"type":41,"value":713},{"type":36,"tag":50,"props":751,"children":753},{"className":752},[],[754],{"type":41,"value":755},"rstore-nuxt-monospace",{"type":41,"value":757}," for framework wiring.",{"items":759,"total":865},[760,774,779,795,808,818,831,841,852],{"slug":761,"name":761,"fn":762,"description":763,"org":764,"tags":765,"stars":19,"repoUrl":20,"updatedAt":773},"rstore-directus","integrate rstore with Directus","Use when integrating rstore with Directus runtime\u002Fschema helpers, generated Directus collections, Directus REST query options, cache-side Directus filtering, singleton handling, primary key stripping, and Directus-backed create\u002Fupdate\u002Fdelete behavior; also use before writing custom Directus fetch or mutation code around rstore collections. Pair with rstore-vue for collection\u002Fquery\u002Fform semantics and with framework-specific Directus skills for Vite or Nuxt wiring.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[766,769,772],{"name":767,"slug":768,"type":15},"API Development","api-development",{"name":770,"slug":771,"type":15},"Database","database",{"name":9,"slug":8,"type":15},"2026-07-12T07:51:07.357988",{"slug":4,"name":4,"fn":5,"description":6,"org":775,"tags":776,"stars":19,"repoUrl":20,"updatedAt":21},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[777,778],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"slug":780,"name":780,"fn":781,"description":782,"org":783,"tags":784,"stars":19,"repoUrl":20,"updatedAt":794},"rstore-nuxt","integrate rstore into Nuxt applications","Use when wiring rstore into a Nuxt app end-to-end — module setup, auto-registered collections\u002Fplugins, SSR cache hydration, generated template\u002Fauto-import issues, and cross-module extension; also use before adding a custom `server\u002Fapi` route, Nitro handler, or ad hoc `useFetch`\u002F`$fetch` composable for collection data in an rstore-powered Nuxt app — prefer rstore collection APIs (`find*`, `query`, `liveQuery`) and plugin hooks over hand-rolled endpoints or fetch refs; pair with the `rstore-vue` skill for collection\u002Fquery\u002Fform behavior.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[785,788,791],{"name":786,"slug":787,"type":15},"Frontend","frontend",{"name":789,"slug":790,"type":15},"Nuxt","nuxt",{"name":792,"slug":793,"type":15},"Vue","vue","2026-07-12T07:51:06.114663",{"slug":796,"name":796,"fn":797,"description":798,"org":799,"tags":800,"stars":19,"repoUrl":20,"updatedAt":807},"rstore-nuxt-drizzle","expose Drizzle data in Nuxt applications","Use when exposing Drizzle-backed data in Nuxt, OR before writing a custom `server\u002Fapi` route, Nitro `defineEventHandler`, H3 handler, or REST\u002FCRUD endpoint that reads or writes a Drizzle table — prefer the module's generated endpoints, `allowTables`, `hooksForTable`, and `publishRstoreDrizzleRealtimeUpdate` over hand-rolled routes; also covers generating collections\u002FAPI routes from schema, adding a new Drizzle table to the rstore API, fixing `Collection \"\u003Cname>\" is not allowed` errors, fetch\u002Ffilter\u002Fpaginate, create\u002Fupdate\u002Fdelete, realtime, offline, and table-level access control; pair with `rstore-nuxt` for Nuxt integration and `rstore-vue` for collection\u002Fquery\u002Fform behavior.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[801,802,803,806],{"name":767,"slug":768,"type":15},{"name":770,"slug":771,"type":15},{"name":804,"slug":805,"type":15},"Drizzle","drizzle",{"name":789,"slug":790,"type":15},"2026-07-12T07:51:10.079641",{"slug":755,"name":755,"fn":809,"description":810,"org":811,"tags":812,"stars":19,"repoUrl":20,"updatedAt":817},"integrate Monospace into Nuxt applications","Use when wiring Monospace into a Nuxt app with @rstore\u002Fnuxt-monospace, including rstoreMonospace config, remote or local OpenAPI generation, generated #build templates, runtime plugin setup, auto-imported useMonospace, runtimeApiKey handling, primaryKeys, and generated rstore collections. Pair with rstore-monospace for shared REST\u002FOpenAPI behavior, rstore-nuxt for Nuxt store integration, and rstore-vue for query\u002Fform usage.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[813,814,815,816],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":789,"slug":790,"type":15},{"name":792,"slug":793,"type":15},"2026-07-12T07:51:12.752798",{"slug":819,"name":819,"fn":820,"description":821,"org":822,"tags":823,"stars":19,"repoUrl":20,"updatedAt":830},"rstore-vite-directus","integrate Directus into Vite applications","Use when wiring Directus into a plain Vite\u002FVue app with @rstore\u002Fvite-directus, including rstoreDirectus config, virtual:rstore-directus modules, generated rstore-directus.d.ts declarations, build-time Directus introspection, and store setup with the generated schema and directusPlugin. Pair with rstore-directus for shared Directus adapter behavior and rstore-vue for collection\u002Fquery\u002Fform usage.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[824,825,826,829],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":827,"slug":828,"type":15},"Vite","vite",{"name":792,"slug":793,"type":15},"2026-07-12T07:51:11.475964",{"slug":748,"name":748,"fn":832,"description":833,"org":834,"tags":835,"stars":19,"repoUrl":20,"updatedAt":840},"integrate Monospace into Vite applications","Use when wiring Monospace into a plain Vite\u002FVue app with @rstore\u002Fvite-monospace, including rstoreMonospace config, remote or local OpenAPI generation, virtual:rstore-monospace modules, generated rstore-monospace.d.ts declarations, runtimeApiKey handling, primaryKeys, and store setup with the generated schema and monospacePlugin.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[836,837,838,839],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":827,"slug":828,"type":15},{"name":792,"slug":793,"type":15},"2026-07-12T07:51:14.078949",{"slug":736,"name":736,"fn":842,"description":843,"org":844,"tags":845,"stars":19,"repoUrl":20,"updatedAt":851},"manage application data with rstore in Vue","Use when handling app data in Vue with `@rstore\u002Fvue` — fetch items\u002Flists, keep queries reactive or live, create\u002Fupdate\u002Fdelete records with forms, manage cache consistency, and debug store\u002Fquery\u002Fsubscription behavior across collections; also use before writing a custom fetch composable, ad hoc fetch ref, or bespoke cache layer for collection data — prefer `find*`, `query`, `liveQuery`, `createForm`, and `definePlugin` hooks over hand-rolled fetching\u002Fcaching.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[846,849,850],{"name":847,"slug":848,"type":15},"Debugging","debugging",{"name":786,"slug":787,"type":15},{"name":792,"slug":793,"type":15},"2026-07-12T07:51:04.87426",{"slug":853,"name":853,"fn":854,"description":855,"org":856,"tags":857,"stars":862,"repoUrl":863,"updatedAt":864},"monospace","perform data operations on Monospace instances","Use when doing ANY task against a Monospace instance. Triggers: reading, creating, updating, deleting, querying, filtering, sorting, or paginating data via the Monospace REST API or the @monospace\u002Fsdk (createClient, readMany, createOne, updateOne); generating a typed SDK client (`npx @monospace\u002Fsdk generate`, monospace.config.ts); connecting to or using the Monospace MCP server; minting API keys or authenticating; inspecting collections, fields, relations, or schema. Do NOT use for legacy Directus v9 \u002F @directus\u002Fsdk — Monospace is a different product with a different API and SDK.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[858,859],{"name":13,"slug":14,"type":15},{"name":860,"slug":861,"type":15},"SDK","sdk",0,"https:\u002F\u002Fgithub.com\u002Fdirectus\u002Fmonospace-agent-skills","2026-07-12T07:51:15.348897",9,{"items":867,"total":913},[868,874,879,885,892,899,906],{"slug":761,"name":761,"fn":762,"description":763,"org":869,"tags":870,"stars":19,"repoUrl":20,"updatedAt":773},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[871,872,873],{"name":767,"slug":768,"type":15},{"name":770,"slug":771,"type":15},{"name":9,"slug":8,"type":15},{"slug":4,"name":4,"fn":5,"description":6,"org":875,"tags":876,"stars":19,"repoUrl":20,"updatedAt":21},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[877,878],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"slug":780,"name":780,"fn":781,"description":782,"org":880,"tags":881,"stars":19,"repoUrl":20,"updatedAt":794},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[882,883,884],{"name":786,"slug":787,"type":15},{"name":789,"slug":790,"type":15},{"name":792,"slug":793,"type":15},{"slug":796,"name":796,"fn":797,"description":798,"org":886,"tags":887,"stars":19,"repoUrl":20,"updatedAt":807},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[888,889,890,891],{"name":767,"slug":768,"type":15},{"name":770,"slug":771,"type":15},{"name":804,"slug":805,"type":15},{"name":789,"slug":790,"type":15},{"slug":755,"name":755,"fn":809,"description":810,"org":893,"tags":894,"stars":19,"repoUrl":20,"updatedAt":817},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[895,896,897,898],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":789,"slug":790,"type":15},{"name":792,"slug":793,"type":15},{"slug":819,"name":819,"fn":820,"description":821,"org":900,"tags":901,"stars":19,"repoUrl":20,"updatedAt":830},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[902,903,904,905],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":827,"slug":828,"type":15},{"name":792,"slug":793,"type":15},{"slug":748,"name":748,"fn":832,"description":833,"org":907,"tags":908,"stars":19,"repoUrl":20,"updatedAt":840},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[909,910,911,912],{"name":767,"slug":768,"type":15},{"name":9,"slug":8,"type":15},{"name":827,"slug":828,"type":15},{"name":792,"slug":793,"type":15},8]