Package Dependency Graph
How packages and peer dependencies relate.
#How the packages relate
@void-snippets/core
— no runtime dependencies
— published as its own package
— used by: client, react, and your app directly
@void-snippets/client
— depends on: core (for types), axios (peer)
— works in any JavaScript environment (Node, browser, Deno)
— used by: react, and your app directly
@void-snippets/react
— depends on: core, client
— peer deps: react, @tanstack/react-query, socket.io-client (optional), react-router (optional)
— used by: your React app only#Why three separate packages?
Progressive adoption. A Vue or Svelte project can use core and client without pulling in React-specific code.
Smaller bundles. If your app only needs HTTP types without the hook factories, install just core and client.
Independent versioning. core stays at 0.3.0 while react ships 0.6.0 — a hook API improvement does not force a major bump on the foundation types.