{"_id":"@agent-ix/quire","name":"@agent-ix/quire","dist-tags":{"latest":"0.0.9"},"versions":{"0.0.9":{"name":"@agent-ix/quire","description":"Structured document interaction library — Parse, query, and render markdown document sections as typed React components.","version":"0.0.9","license":"MIT","packageManager":"pnpm@10.33.4","type":"module","repository":{"type":"git","url":"git+https://github.com/agent-ix/quire.git"},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"help":"node scripts/help.js","test":"vitest run","test:coverage":"vitest run --coverage","test:json":"vitest run --reporter=json --outputFile=report.json || true","lint":"eslint \"src/**/*.{ts,tsx,js,jsx}\" \"tests/**/*.{ts,tsx,js,jsx}\" \".storybook/**/*.{ts,tsx,js,jsx}\" && pnpm run format:check","format":"prettier --write .","format:check":"prettier --check .","build":"vite build","clean":"rm -rf node_modules dist coverage .pnpm-store","install:frozen":"pnpm install --frozen-lockfile","update-lock":"pnpm install --lockfile-only","version":"node scripts/build-tools.js version","info":"node scripts/build-tools.js info","docker:build":"docker build --secret id=github_token,env=GITHUB_TOKEN -t ghcr.io/agent-ix/quire .","prepublishOnly":"pnpm run build","tags":"npm dist-tag ls @agent-ix/quire --registry http://npm.ix/ || echo '(package not found or registry unavailable)'","pkg:add":"pnpm add","pkg:add-dev":"pnpm add -D","pkg:update":"pnpm update","pkg:update-latest":"pnpm update --latest","pkg:use-local":"pnpm dlx @agent-ix/js-deps use-local","pkg:use-upstream":"pnpm dlx @agent-ix/js-deps use-upstream","pkg:refresh-local":"pnpm dlx @agent-ix/js-deps refresh-local","storybook":"storybook dev -p 6006","storybook:ci":"storybook dev -p 6006 --ci","build-storybook":"storybook build","storybook:build-dev":"node scripts/storybook-deploy.js build-dev","storybook:kind-load":"node scripts/storybook-deploy.js kind-load","storybook:deploy":"node scripts/storybook-deploy.js deploy","storybook:halt":"node scripts/storybook-deploy.js halt","storybook:health":"node scripts/storybook-deploy.js health","storybook:logs":"node scripts/storybook-deploy.js logs"},"devDependencies":{"@storybook/react":"^10.4.0","@storybook/react-vite":"^10.4.0","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@types/node":"^25.9.1","@types/react":"^19.2.15","@types/react-dom":"^19.2.3","@typescript-eslint/eslint-plugin":"^8.59.4","@typescript-eslint/parser":"^8.59.4","@vitejs/plugin-react":"^6.0.2","@vitest/coverage-v8":"^4.1.6","add":"^2.0.6","eslint":"^10.4.0","eslint-plugin-prettier":"^5.5.5","jsdom":"^29.1.1","pnpm":"^11.1.3","prettier":"^3.8.3","react":"^19.2.6","react-dom":"^19.2.6","storybook":"^10.4.0","ts-node":"^10.9.2","typescript":"^6.0.3","vite":"^8.0.13","vite-plugin-dts":"^5.0.1","vitest":"^4.1.6"},"peerDependencies":{"react":">=18.2.0","react-dom":">=18.2.0"},"publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"_id":"@agent-ix/quire@0.0.9","gitHead":"a3a2de92a2ea49e781c0da5ad8e27fc84c8d7a62","bugs":{"url":"https://github.com/agent-ix/quire/issues"},"homepage":"https://github.com/agent-ix/quire#readme","_nodeVersion":"22.15.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-5fCXNzIz5WarVag0Q7Rug00A2sCprxA8QQVlb26Tqk0Gd0gCwp9iyqmF9W0j5GBSc1L1tVTWedLQgrqps99gaw==","shasum":"34bcefdf77fe3029d68c06b259ab69538bb79c50","tarball":"https://registry.npmjs.org/@agent-ix/quire/-/quire-0.0.9.tgz","fileCount":32,"unpackedSize":50503,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCH3d1MGXVjUtbYY5V32MS4wmORp4ZNMAwDKo2NLPC2fsCIQDDk7GeZFjRRpHYHyb8RLkAdMhdzW6rMeLQq1I77Zpw8g=="}]},"_npmUser":{"name":"agent-ix","email":"peter@agent-ix.ai"},"directories":{},"maintainers":[{"name":"agent-ix","email":"peter@agent-ix.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/quire_0.0.9_1781880764814_0.15821034462748118"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-19T14:52:44.562Z","0.0.9":"2026-06-19T14:52:44.958Z","modified":"2026-06-19T14:52:45.156Z"},"maintainers":[{"name":"agent-ix","email":"peter@agent-ix.ai"}],"description":"Structured document interaction library — Parse, query, and render markdown document sections as typed React components.","homepage":"https://github.com/agent-ix/quire#readme","repository":{"type":"git","url":"git+https://github.com/agent-ix/quire.git"},"bugs":{"url":"https://github.com/agent-ix/quire/issues"},"license":"MIT","readme":"<p align=\"center\">\n  <img src=\"logo.png\" alt=\"Quire\" width=\"100%\" />\n</p>\n\n# @agent-ix/quire\n\n[![Discord](https://img.shields.io/badge/Discord-Join%20us-5865F2?logo=discord&logoColor=white)](https://discord.gg/6qsdhSPE)\n\n> **quire** _(noun)_ — a gathering of sheets, folded together; from Latin _quaternī_ (four each). In bookbinding, the fundamental unit of structure from which a complete volume is assembled.\n\nStructured document interaction library — Parse, query, and render markdown document sections as typed React components.\n\n## What It Does\n\nQuire takes raw markdown content and provides:\n\n- **Parsing** — split documents into a typed section tree\n- **Querying** — access sections, tables, lists, and diagrams by name\n- **Rich rendering** — render parsed objects as custom React components (badges, icons, interactive tables)\n- **Markdown fallback** — sections without custom renderers display via `markdown-editor` (read-only)\n- **Write-back** — modify sections and serialize back to markdown\n\n## Architecture\n\n```\nLayer 3: React Context     — QuireProvider, SectionCard, SectionTable, AutoSections\nLayer 2: Query API         — section(), tables(), lists(), diagrams(), search()\nLayer 1: Parser            — parseDocument(), extractFrontmatter(), parseBulletList()\n```\n\nLayers 1+2 are pure TypeScript with zero React dependency — usable by agents, scripts, and CLI tools.\n\n## Development\n\n### Storybook\n\nRun Storybook locally in Docker (exposed at http://quire.ix):\n\n```bash\nmake storybook\n```\n\nStop Storybook:\n\n```bash\nmake storybook-stop\n```\n\n### Testing\n\n```bash\nmake test\n```\n\n### Build\n\n```bash\nmake build\n```\n","readmeFilename":"README.md","_rev":"1-93f5a93b97657974d13c846dbc860373"}