Eject CLI
## Context
After the public Shadcn registry contract is validated, Video.js should provide guided source-installation and Skin-ejection workflows over the same canonical catalog and delivery artifacts.
This issue owns Skin-specific CLI outcomes. Generic command infrastructure and future project initialization remain separate under #247.
## Product surface
```sh
videojs add skin video
videojs add skin video --dry-run
videojs add skin video --diff
videojs view skin video
videojs eject skin video
```
## Scope
- Detect or request the framework and style target.
- Resolve source from the canonical catalog and validated registry contract.
- Preview files and dependencies before writing.
- Support view, dry-run, diff, and explicit overwrite behavior.
- Replace recognized packaged Skin usage through narrow, safe transforms.
- Preserve packaged Media, Store, state, and feature implementations.
- Give complete manual instructions when an automatic replacement is unsafe.
## Acceptance criteria
- [ ] React/Tailwind installation uses the same public artifacts as direct shadcn usage.
- [ ] Other supported framework/style targets preserve the same catalog item and ownership boundaries.
- [ ] Detection either selects a valid target or asks the developer explicitly.
- [ ] View, dry-run, and diff do not modify the project.
- [ ] Existing files are not overwritten without explicit confirmation.
- [ ] Safe replacement transforms are idempotent.
- [ ] Unsafe or divergent packaged usage is left unchanged with actionable instructions.
- [ ] Clean React and HTML fixture projects build after installation.
- [ ] Command output clearly identifies installed files, dependencies, and developer ownership.
## Required context
- #1055
- #1951
- #2261
- #247
0 条评论