{"_id":"@axol-assist/accessflow","_rev":"3-fc93b5af57eee8ebc3343009dda8b313","name":"@axol-assist/accessflow","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@axol-assist/accessflow","version":"1.0.0","keywords":["accessibility","a11y","toolbar","wcag","dyslexia","accessflow","axolo-assist"],"author":{"name":"Axolo Assist"},"license":"MIT","_id":"@axol-assist/accessflow@1.0.0","maintainers":[{"name":"axolassist","email":"axolassist.business@gmail.com"}],"homepage":"https://axolassist.com/toolbar.html","bugs":{"url":"https://github.com/slasherthunder/petersclassroom/issues"},"dist":{"shasum":"a26e0d490660c4db10b6e8417e82f9129e1297f2","tarball":"https://registry.npmjs.org/@axol-assist/accessflow/-/accessflow-1.0.0.tgz","fileCount":9,"integrity":"sha512-6lAXiOFRnKYg74jEaGsPK+wDYW7RtkGuwVSnC0uwrlEP1hdB69h2nAJWMjnjYh7km3XDFp0ESssCrtnCgbFW/A==","signatures":[{"sig":"MEUCIQD76id6tnNurggZJ2ZYLQgTMfUKQ3Cvb8JcKRGLt4sQywIgEOshq1Qvn6xVJ/TNRDcY+w5rarktOx5uebAuUovWVuE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@axol-assist%2faccessflow@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":462810},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"181b3f27a857ea9849fbfe08ef6ef4bcba045019","scripts":{"build":"tsup && node scripts/sync-cdn.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"axolassist","email":"axolassist.business@gmail.com"},"repository":{"url":"git+https://github.com/slasherthunder/petersclassroom.git","type":"git","directory":"packages/accessflow"},"_npmVersion":"10.8.2","description":"Production-ready accessibility toolbar SDK for any modern web app","directories":{},"sideEffects":["./dist/index.js","./dist/index.cjs"],"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","react":"^18.3.1","typescript":"^5.8.2","@types/react":"^18.3.18"},"peerDependencies":{"react":">=17.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/accessflow_1.0.0_1781587061132_0.9031057000625715","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@axol-assist/accessflow","version":"1.0.1","keywords":["accessibility","a11y","toolbar","wcag","dyslexia","accessflow","axolo-assist"],"author":{"name":"Axolo Assist"},"license":"MIT","_id":"@axol-assist/accessflow@1.0.1","maintainers":[{"name":"axolassist","email":"axolassist.business@gmail.com"}],"homepage":"https://axolassist.com/toolbar.html","bugs":{"url":"https://github.com/slasherthunder/petersclassroom/issues"},"dist":{"shasum":"edb61db70624e0172eefddfa1aec28e893f37153","tarball":"https://registry.npmjs.org/@axol-assist/accessflow/-/accessflow-1.0.1.tgz","fileCount":16,"integrity":"sha512-jmPQhT9SJB4ilsai++7SIH4GM0Z2QmogoyTJwtBVYRVkZudLMt2hgKSr9Ovq5LXWqIP7cuSFWc4Cd9rlx7J8aw==","signatures":[{"sig":"MEYCIQC0fTzJpSQDQyypnRtrndTSedPc2z2cPlk8RcfaSdLbhAIhANrtbbAtppWwql33lhqWovuFP42oWaTY2Ep1nKjYN2aR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@axol-assist%2faccessflow@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1000566},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./auto":{"types":"./dist/index.d.ts","import":"./dist/auto.js","require":"./dist/auto.cjs"},"./react":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/accessflow.css","./package.json":"./package.json"},"gitHead":"14c427b075cb373a10fca22d574cf9ab3b0081ce","scripts":{"build":"tsup && node scripts/sync-cdn.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"axolassist","email":"axolassist.business@gmail.com"},"repository":{"url":"git+https://github.com/slasherthunder/petersclassroom.git","type":"git","directory":"packages/accessflow"},"_npmVersion":"10.8.2","description":"Production-ready accessibility toolbar SDK for any modern web app","directories":{},"sideEffects":["./dist/auto.js","./dist/auto.cjs","./dist/index.js","./dist/index.cjs"],"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","react":"^18.3.1","typescript":"^5.8.2","@types/react":"^18.3.18"},"peerDependencies":{"react":">=17.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/accessflow_1.0.1_1781588174691_0.1515485510632515","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@axol-assist/accessflow","version":"1.0.2","description":"Production-ready accessibility toolbar SDK for any modern web app","author":{"name":"Axolo Assist"},"license":"MIT","type":"module","sideEffects":["./dist/auto.js","./dist/auto.cjs","./dist/index.js","./dist/index.cjs"],"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./auto":{"types":"./dist/index.d.ts","import":"./dist/auto.js","require":"./dist/auto.cjs"},"./styles.css":"./dist/accessflow.css","./package.json":"./package.json"},"scripts":{"build":"tsup && node scripts/sync-cdn.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"keywords":["accessibility","a11y","toolbar","wcag","dyslexia","accessflow","axolo-assist"],"repository":{"type":"git","url":"git+https://github.com/slasherthunder/petersclassroom.git","directory":"packages/accessflow"},"homepage":"https://axolassist.com/toolbar.html","bugs":{"url":"https://github.com/slasherthunder/petersclassroom/issues"},"peerDependencies":{"react":">=17.0.0"},"peerDependenciesMeta":{"react":{"optional":true}},"devDependencies":{"@types/react":"^18.3.18","react":"^18.3.1","tsup":"^8.4.0","typescript":"^5.8.2"},"engines":{"node":">=18"},"publishConfig":{"access":"public","provenance":true},"_id":"@axol-assist/accessflow@1.0.2","gitHead":"742602cedbf64659d2cc8aaeeb777d03a98d29fb","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-Cw25kj/PrFVz9cSJ2c4UgjVpjTi2/yK2NtW4JoBAbQiiqz278y0M5v1yunok7QiSjG2nH6K1PQmGFCDIZbogCg==","shasum":"2c6761864db417635755f5155efb776bc4738df9","tarball":"https://registry.npmjs.org/@axol-assist/accessflow/-/accessflow-1.0.2.tgz","fileCount":16,"unpackedSize":1126008,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@axol-assist%2faccessflow@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGNjIVcfHQBxhi2HcwzoB8JKdUx5/Bn2hoo1/sDCfednAiAYpGprixX5p11OBk3Z9WczXG9Ialq4chNlfabRjJ9aTw=="}]},"_npmUser":{"name":"axolassist","email":"axolassist.business@gmail.com"},"directories":{},"maintainers":[{"name":"axolassist","email":"axolassist.business@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/accessflow_1.0.2_1781588396779_0.22792396065088183"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-16T05:17:40.965Z","modified":"2026-06-16T05:39:57.306Z","1.0.0":"2026-06-16T05:17:41.344Z","1.0.1":"2026-06-16T05:36:14.883Z","1.0.2":"2026-06-16T05:39:56.952Z"},"bugs":{"url":"https://github.com/slasherthunder/petersclassroom/issues"},"author":{"name":"Axolo Assist"},"license":"MIT","homepage":"https://axolassist.com/toolbar.html","keywords":["accessibility","a11y","toolbar","wcag","dyslexia","accessflow","axolo-assist"],"repository":{"type":"git","url":"git+https://github.com/slasherthunder/petersclassroom.git","directory":"packages/accessflow"},"description":"Production-ready accessibility toolbar SDK for any modern web app","maintainers":[{"name":"axolassist","email":"axolassist.business@gmail.com"}],"readme":"# @axol-assist/accessflow\n\nProduction-ready accessibility toolbar SDK by [Axolo Assist](https://axolassist.com). Add visitor-controlled font, contrast, spacing, and motion controls to any site with one import.\n\n## Quick start\n\n```bash\nnpm install @axol-assist/accessflow\n```\n\n**Zero-config** (auto-initializes on load):\n\n```ts\nimport '@axol-assist/accessflow/auto';\n```\n\nStyles, fonts, and the toggle icon are bundled in the JS — no separate asset requests.\n\n**Manual control** (no auto-init):\n\n```ts\nimport { boot } from '@axol-assist/accessflow';\n\nboot({ position: 'bottom-left' });\n```\n\n```ts\nimport { init, destroy } from '@axol-assist/accessflow';\n\ninit({ position: 'top-right' });\n// later\ndestroy();\n```\n\n> Do not combine `import '@axol-assist/accessflow/auto'` with `init()` or `<AccessFlow />` — pick one initialization path.\n\n## React\n\n```tsx\nimport { AccessFlow } from '@axol-assist/accessflow/react';\n\nexport default function App() {\n  return (\n    <>\n      <AccessFlow />\n      {/* your app */}\n    </>\n  );\n}\n```\n\nThe component mounts once, prevents duplicates, and cleans up on unmount.\n\n### Next.js (App Router)\n\n```tsx\n// app/providers.tsx\n'use client';\n\nimport { AccessFlow } from '@axol-assist/accessflow/react';\n\nexport function Providers({ children }: { children: React.ReactNode }) {\n  return (\n    <>\n      <AccessFlow />\n      {children}\n    </>\n  );\n}\n```\n\n### Astro\n\n```astro\n---\n// src/layouts/Layout.astro\n---\n<script>\n  import '@axol-assist/accessflow/auto';\n</script>\n```\n\n## CDN (no bundler)\n\n```html\n<script src=\"https://axolassist.com/cdn/accessflow.js\"></script>\n```\n\nOptional configuration before the script:\n\n```html\n<script>\n  window.AccessFlowConfig = {\n    position: 'bottom-left',\n    accentColor: '#B03060',\n  };\n</script>\n```\n\nStyles, fonts, and the toggle icon are inlined in the CDN bundle.\n\n## Configuration\n\n| Option | Default | Description |\n|--------|---------|-------------|\n| `position` | `bottom-right` | Toolbar button placement |\n| `accentColor` | `#B03060` | Active control color |\n| `iconUrl` | bundled icon | Toggle button image (override with your own URL) |\n| `cssUrl` | — | Load stylesheet via `<link>` instead of bundled CSS |\n| `skipCssInject` | `false` | Skip bundled CSS inject (use with `cssUrl`) |\n| `showBranding` | `true` | Show “Powered by Axolo Assist” in the panel footer |\n| `skipAutoInit` | `false` | CDN/auto entry only — disable auto boot |\n| `storageKey` | `accessflow-settings-v1` | localStorage key |\n| `features` | all enabled | Toggle toolbar sections |\n\n### External stylesheet (optional)\n\nBundled CSS is the default. To host the stylesheet yourself:\n\n```ts\nimport { boot } from '@axol-assist/accessflow';\n\nboot({\n  skipCssInject: true,\n  cssUrl: '/accessflow.css',\n});\n```\n\nOr copy from the package:\n\n```ts\n// Vite / Astro — serve from public/\nimport cssUrl from '@axol-assist/accessflow/styles.css?url';\n\nboot({ skipCssInject: true, cssUrl });\n```\n\n```ts\nimport { init } from '@axol-assist/accessflow';\n\ninit({\n  position: 'bottom-left',\n  features: {\n    bigCursor: false,\n  },\n});\n```\n\n## Features\n\n- Text scaling (80%–200%)\n- OpenDyslexic font\n- Contrast modes (dark, high)\n- Color filters (grayscale, sepia, invert)\n- Letter, word, and line spacing\n- Reading guide bar\n- Link highlight and underline\n- Enhanced focus indicators\n- Reduce motion / pause animations\n- Large cursor\n- Persistent settings per visitor (localStorage)\n\n## Framework support\n\nWorks with React, Next.js, Vite, Astro, Vue, Svelte, and static HTML. SSR-safe — initialization only runs in the browser.\n\n## Development\n\n```bash\ncd packages/accessflow\nnpm install\nnpm run build\n```\n\nBuild outputs ESM + CJS to `dist/`, ships `dist/accessflow.css`, and syncs the CDN IIFE to `/cdn/accessflow.js`.\n\n## Publishing\n\nSee [PUBLISHING.md](./PUBLISHING.md). Tag `accessflow` after adding `NPM_TOKEN` to GitHub Actions secrets.\n\n## Privacy\n\nAccessFlow does not collect visitor data. Settings stay in the visitor's browser.\n\n## License\n\nMIT © Axolo Assist\n","readmeFilename":"README.md"}