open-index/open-npm huggingface dataset:
npm package: @react-scraper/foundation
Description: Shared UI and application scaffolding for React-based scraping dashboards.
Latest version: 0.1.18

# @react-scraper/foundation

Foundational UI, state, and routing primitives extracted from the React Scraper template. The package is published as plain TypeScript source so the consuming Vite build can tree-shake components alongside the app.

## Development workflow
- Keep building features inside `src/` and import them from the host app.
- When the host should use the live workspace copy, run `npm run use:foundation:local` from the repo root. The script pins the dependency to `workspace:*` and refreshes `node_modules`.

## Test the publish payload
1. Run `npm run pack:foundation` in the repo root. This creates `react-scraper-foundation-<version>.tgz` next to `package.json`.
2. In a clean checkout of the host app, install the tarball with `npm install ../react-scraper/react-scraper-foundation-<version>.tgz` and run the usual Vite build to confirm everything compiles.

## Switch the host app to the registry copy
- `npm run use:foundation:npm latest` pins the dependency to the latest npm tag.
- `npm run use:foundation:npm 0.2.0` pins it to an explicit version.
- The script accepts any npm range (for example `npm run use:foundation:npm ^0.2.0`). Each run re-installs dependencies so the lockfile stays in sync.

## Publish
1. Bump the version: `npm version patch --workspace packages/react-scraper-foundation` (or `minor`/`major`).
2. Sign in once with `npm login`.
3. Publish from the repo root: `npm publish --workspace packages/react-scraper-foundation`.
4. Switch the host app to `npm` mode and install the new version for validation.

The published tarball only contains `src/` and `README.md`, so no build artifacts or credentials are ever uploaded.