UNPKG

everything-dev

Version:

A consolidated product package for building Module Federation apps with oRPC APIs.

65 lines (48 loc) 1.8 kB
# everything-dev A consolidated product package for building Module Federation apps with oRPC APIs. ## Subpath Exports - `everything-dev/types` - Zod schemas and TypeScript types - `everything-dev/config` - Config loading and resolution - `everything-dev/shared` - Shared dependency policy generation - `everything-dev/mf` - Module Federation runtime utilities - `everything-dev/plugin` - Plugin authoring (re-exports from every-plugin) - `everything-dev/api` - API plugin loading and router stitching - `everything-dev/host` - Host server orchestration - `everything-dev/cli` - CLI entry point and plugin workspace commands ### Plugin commands - `bos plugin add <source>` - attach local or remote plugins - `bos plugin remove <key>` - detach a plugin - `bos plugin list` - list configured plugins - `bos plugin publish <key>` - publish one plugin package ## Demo See `demo-next/docs-book/` for a minimal example that demonstrates: - Host server loading UI and API remotes via MF manifest - API plugin with oRPC contract - UI with TanStack Router - E2E tests with Playwright ## Quick Start ```bash # Build the package cd packages/everything-dev npm run build # Run the demo cd ../../demo-next/docs-book/host npm run dev ``` ## Architecture ``` bos.config.json ↓ everything-dev/config (load + resolve) ↓ everything-dev/shared (generate shared deps policy) ↓ everything-dev/host (orchestrate) ├── everything-dev/api (load API plugins via MF) └── everything-dev/mf (load UI remote via MF) ``` ## MF Manifest Standard All remotes (UI + API) use `mf-manifest.json` as the standard entry point: - `ui.entry = <uiBaseUrl>/mf-manifest.json` - `api.entry = <apiBaseUrl>/mf-manifest.json` This ensures consistent remote loading across Node SSR and browser environments.