-
Notifications
You must be signed in to change notification settings - Fork 0
Labs and Extensions
이 페이지는 json-document core 주변의 공식 extension package, lab app, lab extension 목록이다.
Core API는 @interactive-os/json-document가 제공하는 안정화된 document surface다. Extension package는 그 core 위에서 특정 제품 기능을 더 쉽게 만들기 위한 별도 package다. Lab은 아직 실험, 검증, 데모, product fit 확인을 위해 둔 공간이다.
| 상태 | 위치 | 의미 |
|---|---|---|
official |
packages/* |
core 위에 얹는 별도 package |
lab app |
apps/*-lab |
특정 extension이나 workflow를 확인하는 앱 |
lab |
labs/extensions/* |
승격 전 실험 extension |
labs는 core 1.x 하위 호환성 보장 범위에 포함되지 않는다. Lab에서 검증된 기능은 이후 공식 extension package나 core API로 승격될 수 있다.
| 찾는 기능 | 먼저 볼 범주 |
|---|---|
| 여러 값 수정, 검색/치환, 기본값 적용 | 편집과 변환 |
| array item, outline, grouping, drag/drop | 구조와 collection |
| schema 기반 form, field descriptor, draft | Schema와 form |
| comment, proposed change, protected range | Review와 collaboration |
| 저장, dirty state, autosave, patch log | Persistence와 history |
| clipboard, id resolver, pointer/reference | Adapter와 infrastructure |
| 실제 화면에서 workflow 확인 | Lab apps |
값을 직접 바꾸거나, 여러 값을 한 번에 변환하거나, text/number field에 제품 command를 얹는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-bulk-edit |
packages/bulk-edit |
JSONPath 기반 일괄 편집 |
official |
@interactive-os/json-document-search-replace |
packages/search-replace |
text field search/replace |
official |
@interactive-os/json-document-snippets |
packages/snippets |
reusable JSON payload insertion |
lab |
@interactive-os/json-document-apply-defaults |
labs/extensions/apply-defaults |
object에 누락된 기본값 적용 |
lab |
@interactive-os/json-document-batch-update |
labs/extensions/batch-update |
선택 item의 특정 field 일괄 변경 |
lab |
@interactive-os/json-document-calculated-fields |
labs/extensions/calculated-fields |
host-calculated field 동기화 |
lab |
@interactive-os/json-document-change-case |
labs/extensions/change-case |
문자열 case/whitespace 변환 |
lab |
@interactive-os/json-document-clear-contents |
labs/extensions/clear-contents |
schema 기반 빈 값으로 field reset |
lab |
@interactive-os/json-document-convert-type |
labs/extensions/convert-type |
string/number/boolean field type 변환 |
lab |
@interactive-os/json-document-fill-blanks |
labs/extensions/fill-blanks |
비어 있는 slot만 채우기 |
lab |
@interactive-os/json-document-fill-down |
labs/extensions/fill-down |
마지막 non-empty 값을 아래 빈 값으로 전파 |
lab |
@interactive-os/json-document-fill-series |
labs/extensions/fill-series |
series/fill propagation |
lab |
@interactive-os/json-document-generate-slug |
labs/extensions/generate-slug |
문자열에서 URL-safe slug 생성 |
lab |
@interactive-os/json-document-increment-number |
labs/extensions/increment-number |
numeric field 증가/감소 |
lab |
@interactive-os/json-document-join-text |
labs/extensions/join-text |
array를 문자열 field로 join |
lab |
@interactive-os/json-document-pad-text |
labs/extensions/pad-text |
문자열 minimum length padding |
lab |
@interactive-os/json-document-round |
labs/extensions/round |
round/floor/ceil number transform |
lab |
@interactive-os/json-document-split-text |
labs/extensions/split-text |
string을 array item으로 split |
lab |
@interactive-os/json-document-toggle-option |
labs/extensions/toggle-option |
array set 안의 option toggle |
lab |
@interactive-os/json-document-toggle-value |
labs/extensions/toggle-value |
field 값을 toggle 또는 advance |
lab |
@interactive-os/json-document-trim-text |
labs/extensions/trim-text |
문자열 max length trim |
Array item, outline node, grouped block, layer, sparse record처럼 JSON 구조 자체를 편집하는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-collection |
packages/collection |
ordered array item command |
official |
@interactive-os/json-document-grouping |
packages/grouping |
구조적 group/ungroup |
official |
@interactive-os/json-document-outline |
packages/outline |
outline tree와 구조 편집 |
lab |
@interactive-os/json-document-convert-block-type |
labs/extensions/convert-block-type |
블록 type 변환 |
lab |
@interactive-os/json-document-dedupe |
labs/extensions/dedupe |
array item 중복 제거 |
lab |
@interactive-os/json-document-drag-drop |
labs/extensions/drag-drop |
drag/drop command planning |
lab |
@interactive-os/json-document-grid-range |
labs/extensions/grid-range |
sparse-record 기반 grid range 편집 |
lab |
@interactive-os/json-document-layer-order |
labs/extensions/layer-order |
layer ordering |
lab |
@interactive-os/json-document-limit-items |
labs/extensions/limit-items |
array item 개수 제한 |
lab |
@interactive-os/json-document-move-selected |
labs/extensions/move-selected |
연속 선택 item 이동 |
lab |
@interactive-os/json-document-paste-cells |
labs/extensions/paste-cells |
2D matrix를 rectangular cells에 paste |
lab |
@interactive-os/json-document-renumber-items |
labs/extensions/renumber-items |
array position을 order field에 동기화 |
lab |
@interactive-os/json-document-sort-items |
labs/extensions/sort-items |
array item sort/reverse |
lab |
@interactive-os/json-document-sparse-record |
labs/extensions/sparse-record |
sparse record entry editing |
lab |
@interactive-os/json-document-swap-items |
labs/extensions/swap-items |
array item 두 개 교환 |
lab |
@interactive-os/json-document-wrap-selection |
labs/extensions/wrap-selection |
선택 item wrap/unwrap |
Schema를 UI affordance, form draft, field descriptor로 연결하는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-form-draft |
packages/form-draft |
commit 전 임시 invalid form input 관리 |
official |
@interactive-os/json-document-schema-form |
packages/schema-form |
schema 기반 field descriptor |
문서 위에 review, comment, proposed change, protected range, collaborator cursor를 얹는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-comments |
packages/comments |
document anchor 기반 review comment |
official |
@interactive-os/json-document-proposed-changes |
packages/proposed-changes |
제안 변경 review workflow |
official |
@interactive-os/json-document-protected-ranges |
packages/protected-ranges |
보호 범위 guard |
lab |
@interactive-os/json-document-live-cursors |
labs/extensions/live-cursors |
remote collaborator cursor tracking |
저장, dirty state, autosave, checkpoint, patch log처럼 document lifecycle을 다루는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-dirty-state |
packages/dirty-state |
변경 여부 추적 |
official |
@interactive-os/json-document-patch-log |
packages/patch-log |
patch 기록과 replay |
official |
@interactive-os/json-document-patch-preview |
packages/patch-preview |
patch dry-run과 preview |
official |
@interactive-os/json-document-persist-web |
packages/persist-web |
browser storage persistence |
lab |
@interactive-os/json-document-autosave |
labs/extensions/autosave |
autosave orchestration |
lab |
@interactive-os/json-document-checkpoints |
labs/extensions/checkpoints |
checkpoint snapshot |
lab |
@interactive-os/json-document-document-diff |
labs/extensions/document-diff |
document diff와 apply |
Browser, external id, reference, clipboard, paste adapter처럼 제품 환경과 core 사이를 잇는 기능이다.
| Status | Package | 위치 | 용도 |
|---|---|---|---|
official |
@interactive-os/json-document-clipboard-web |
packages/clipboard-web |
Web clipboard adapter |
official |
@interactive-os/json-document-id-resolver |
packages/id-resolver |
scope와 id 기반 node 위치 확인 |
lab |
@interactive-os/json-document-bookmarks |
labs/extensions/bookmarks |
bookmark tracking |
lab |
@interactive-os/json-document-paste-special |
labs/extensions/paste-special |
paste special workflow |
lab |
@interactive-os/json-document-references |
labs/extensions/references |
stable reference와 backlink |
Lab app은 특정 workflow나 extension 후보를 실제 화면에서 확인하기 위한 앱이다. Public API 기준 문서가 아니라 제품 검증 공간이다.
| App | 위치 | 확인 대상 |
|---|---|---|
@interactive-os/json-document-copy-review-lab |
apps/copy-review-lab |
copy/review workflow |
@interactive-os/json-document-grouping-lab |
apps/grouping-lab |
grouping extension workflow |
@interactive-os/json-document-proposed-changes-lab |
apps/proposed-changes-lab |
proposed changes workflow |
@interactive-os/json-document-protected-ranges-lab |
apps/protected-ranges-lab |
protected ranges workflow |
@interactive-os/json-document-review-comments-lab |
apps/review-comments-lab |
review comments workflow |
@interactive-os/json-document-schema-form-lab |
apps/schema-form-lab |
schema form workflow |
@interactive-os/json-document-snippet-composer-lab |
apps/snippet-composer-lab |
snippet composer workflow |
제품에서 바로 써야 하는 것은 먼저 같은 범주의 official package를 본다.
원하는 기능이 아직 lab에만 있다면 API 안정성을 전제로 두지 말고, 현재 실험 방향과 product fit을 확인하는 자료로 본다.
Core API 자체는 json-document Core API Reference를 기준으로 한다.