
package-configuration
by bretuobay
Web Loom is a lightweight, framework-agnostic toolkit offering MVVM architecture, state stores, event bus utilities, and headless UI behaviors for modern web apps.
SKILL.md
name: package-configuration description: Configure workspace apps or packages to match the repo-wide Vite/Vitest/Turbo conventions (aliases, shared TypeScript configs, scripts, and caching). Use when Codex needs to set up or change tooling for an app/package or explain how the dev/test/build pipeline is wired across workspaces.
Package configuration reference
Follow this skill whenever you touch tooling for an app or package (Vite, Vitest, or Turbo). The guidance keeps tooling aligned with existing workspace conventions.
Vite + Vitest wiring
-
Start from the React app templates in
apps/mvvm-reactandapps/task-flow-ui. The Vite configs there define the alias maps (e.g., linking@repo/models,@repo/view-models,@web-loom/mvvm-core,@web-loom/ui-core, etc., to../../packages/...) and the plugin stack (@vitejs/plugin-react-swc). Extend the alias resolver whenever you expose a new shared package; keepoptimizeDeps.includein sync when dependencies must be pre-bundled. Seereferences/vite-and-vitest.mdfor the patterns. -
Vitest uses the same alias map so tests resolve workspace packages the way builds do. The shared
testconfig blocks (globals,jsdomenvironment, coverage filters,setupFiles) are already captured inapps/mvvm-react/vitest.config.ts.
Turbo repository pipelines
- Root
turbo.jsongoverns caching and task dependencies (build,lint,check-types,test,dev). Keep new tasks aligned with these definitions: e.g.,devis markedcache: falseandpersistent: true, whiletestdepends on^build. When adding a new app/package, give it the standard scripts (dev,build,lint,test,check-types) so Turbo can orchestrate it out-of-the-box. Refer toturbo.jsonfor inputs/outputs and to the rootpackage.jsonscripts (e.g.,npm run dev,npm run test) that wrapturbo run.
TypeScript + workspace sharing
-
Every package relies on
@repo/typescript-configvariants (base.json,react-library.json, etc.). Extend or compose those configs when adding new tsconfig(s). Make suretsconfig.jsonreferences the correct rootpackages/typescript-config. When publishing or building, runnpm run check-types/tsc --noEmitvia Turbo so emitteddistartifacts stay accurate. -
Share code through the
apps/*andpackages/*workspace layout defined in the rootpackage.json. Depend on packages with workspace ranges ("@repo/shared": "*") and export from each package viaexports/main/typesso Vite/Vitest/Turbo resolve them correctly.
Verification checklist
npm run lint,npm run check-types,npm run test(or filtered Turbo task) succeed from the workspace root.npm run dev(orturbo run dev --filter=<app>...) starts the intended app—watch the console for alias resolution warnings.- Any new package gets referenced aliases updated in the Vite/Vitest configs and the
packages/typescript-configsetups.
See references/vite-and-vitest.md for concrete config snippets derived from the existing apps.
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon
