Viz Libraries
Instantiate and document qmap and qflow in the design site
Why
qmap (3D network visualization, Three.js) and qflow (2D traffic visualization, PixiJS) have each gone through extensive experimentation cycles (14 and 9 respectively) and are approaching production readiness. Neither is formally documented or consumable outside of ad-hoc Vite aliases. The design site — as the single source of truth for Qpoint's visual language — is the right place to document them and establish the consumption pattern.
Objective
Make both visualization libraries discoverable and documented on the design site, with live demos. Rename packages to @qpoint-io scope to match the established GitHub Packages pattern. Establish local dev consumption via Nuxt aliases so the design site can render live demos from source.
Scope
In scope:
- Rename
@qpoint/qmap→@qpoint-io/qmapand@qpoint/flow→@qpoint-io/qflow - Update all internal references across qmap, qflow, and app.qpoint.io
- Add
publishConfigandrepositoryfields to both package.json files (prep for future publish) - Wire up design site with local aliases, peer deps, and SSR safety config
- Create
/visualizationsection with overview + detail pages for each library - Add nav entry and link from projects page
Not in scope (future phase):
- Publishing to GitHub Packages (libraries still in experimentation)
- Production consumption pattern (npm install from registry)
- Extracting components to the shared layer
Key Changes
Phase 1: Package Identity
- Rename both packages to
@qpoint-ioscope - Add
publishConfig+repositoryto both package.json files - Update references in README, CLAUDE.md, imports, and app.qpoint.io alias
Phase 2: Design Site Consumption
- Add
threeandpixi.jsas peer deps in design site - Add Nuxt aliases pointing at sibling source directories
- Configure
vite.ssr.externalfor Three.js/PixiJS (browser-only libs) - Configure
vite.optimizeDeps.excludefor aliased packages
Phase 3: Documentation Pages
/visualization— overview with cards for each library/visualization/qmap— live demo, props API, composable API/visualization/qflow— live demo with mock data, props API, layout catalog- Nav link + projects page links
Outcome
- Renamed
@qpoint/qmap→@qpoint-io/qmapacross 18 files + package-lock - Renamed
@qpoint/flow→@qpoint-io/qflowacross 26 files + package-lock - Both packages have
publishConfig+repositoryfor future GitHub Packages publish - Updated app.qpoint.io alias to match new names
- Design site wired as consumer: Nuxt aliases for local HMR,
vite.ssr.externalfor Three.js/PixiJS,three+pixi.jsinstalled as peer deps - 3 new pages:
/visualization(overview),/visualization/qmap(live 3D demo + API docs),/visualization/qflow(live 2D demo with 500 mock audit logs + API docs) - "Viz" nav link added, projects page cards link to viz detail pages
- All pages SSR-safe (200 status,
<ClientOnly>wrappers)
Open Issues
- QFlow's c9 (dev-tools integration) is still active — API may shift
- Neither library has TypeScript types yet
Visual record
3 captures — heroes, page slices, and full-page renders. Click to view.



In the archive
Artifacts
- thread: cycle-create — prompt