Contributing
Source lives at github.com/srjn45/sp-treeview-v2; bugs and feature requests go to the issue tracker. MIT licensed.
Repository layout
Section titled “Repository layout”packages/core @sp-treeview/core — headless state enginepackages/element @sp-treeview/element — <sp-tree>, <sp-tree-select>examples/ plain-HTML demo, React example, Playwright e2edocs/ theming, migration, design specsite/ this website (Astro + Starlight + live demos)src/, angular.json legacy Angular demo — FROZEN, not part of the build gateDevelop
Section titled “Develop”npm install # root — installs all workspacesnpm run lint # lint all workspace packagesnpm test # unit tests (vitest) + Playwright e2enpm run build # build core + element + examples (the gate)The root lint/test/build scripts run across the packages/* and
examples workspaces. The legacy Angular app is not in the gate.
Working on this site
Section titled “Working on this site”# one-time: build the element package the demos embednpm run build --workspace=@sp-treeview/element
cd sitenpm installnpm run dev # bundles the demo widget, then starts Astro dev serverThe site deploys to GitHub Pages automatically on pushes to master that
touch site/, the packages, or the workflow
(.github/workflows/site.yml).
Legacy Angular demo (frozen)
Section titled “Legacy Angular demo (frozen)”The original Angular (2/4/5→21) plugin under src/app/sp-treeview/ is kept
for reference and history only: no new features, no bug fixes. Its
verified defects are the reason for the v4 rewrite — see the
migration guide.