SNA

Core SDK

SNA를 임베드하기 위한 런타임, 서버, 런처, 설정 표면입니다.

Core SDK

@sna-sdk/core는 가장 낮은 수준의 패키지입니다. 다른 프로세스 안에서 SNA를 실행하거나, 자체 서버를 통해 SNA를 노출하거나, runtime-adapter primitive가 직접 필요할 때 사용합니다.

Core는 React를 가정하지 않으며 브라우저 클라이언트도 필요로 하지 않습니다. 설정, runtime process lifecycle, HTTP/WS server assembly, SQLite 기반 history, Node/Electron host용 launcher를 포함한 서버 측 런타임 계약을 담당합니다.

Install

pnpm add @sna-sdk/core@0.17.2

Host application에는 better-sqlite3도 설치해야 합니다. Electron app은 native binding을 runtime에 맞게 다시 빌드해야 하는 경우가 많기 때문에 이 dependency는 peer dependency로 둡니다.

Public surfaces

Import map

import path사용처
@sna-sdk/coreRuntime helper, shared type, configuration helper, runtime-neutral data shape.
@sna-sdk/core/serverSNA HTTP app 생성, WebSocket 연결, server-side session 관리.
@sna-sdk/core/node일반 Node process에서 standalone SNA server 시작.
@sna-sdk/core/electronElectron에서 SNA 시작. Packaged app path 처리와 in-process mode를 포함합니다.
@sna-sdk/core/db/schema직접 migration 또는 inspection이 필요한 host를 위한 database schema helper.
@sna-sdk/core/providers고급 runtime-adapter primitive. 대부분의 app은 server 또는 client API를 쓰는 편이 좋습니다.

Core를 선택할 때

Host가 local server lifecycle을 직접 소유해야 한다면 Core를 선택합니다. Desktop app, internal CLI, test harness, 자체 HTTP server 위에서 SNA를 노출하는 custom backend가 대표적인 예입니다.

이미 server가 실행 중이고 typed HTTP, WebSocket, SSE 접근만 필요하다면 @sna-sdk/client를 사용하십시오. React UI 안에서 통합한다면 @sna-sdk/react가 더 적합합니다.

목차