Add bilingual manual and localized docs routes

This commit is contained in:
2026-08-14 11:16:37 +09:00
parent 3645a2cc2d
commit cda32cc260
85 changed files with 2316 additions and 71 deletions
+81
View File
@@ -0,0 +1,81 @@
# Packages and Integrations
Decodal は実行、ホスト組み込み、言語サービス、エディタ統合を用途別の package として提供する。
## Rust
### `decodal`
Rust アプリケーション向けの runtime と embedding API である。
source の parse・evaluate・materialize、host global、source または structured value の import を扱う。
```toml
[dependencies]
decodal = "0.4"
```
Rust struct から Decodal schema と decoder を生成する場合は `derive` feature を有効にする。
```toml
[dependencies]
decodal = { version = "0.4", features = ["derive"] }
```
正規表現制約を検証する場合は `regex` feature を有効にする。
この feature は `std` を必要とする。
### `decodal-language-service`
transport に依存しない semantic evaluation と completion を提供する。
アプリケーションの `HostEnvironment` をそのまま受け取るため、本番評価と編集時評価で global bindings と import 規則を共有できる。
### `decodal-lsp`
language service を Language Server Protocol に接続する。
stdio server のほか、client の `InitializeParams` からアプリケーション固有の environment を構築する library API を提供する。
### `decodal-language-tools`
source formatter など、source text を扱う共通ツールを提供する。
formatter は Rust、LSP、WebAssembly の各統合から同じ実装を利用できる。
## JavaScript and WebAssembly
### `decodal-wasm`
browser と WebAssembly 対応 runtime 向けの evaluator と language service である。
```sh
npm install decodal-wasm
```
JSR では `@hare/decodal-wasm` として提供される。
`DecodalLanguageService``globals``loadImport``completeImport` を渡すことで、JavaScript が所有する environment を評価と補完で共有できる。
### `decodal-codemirror`
CodeMirror 6 向けの language support である。
syntax highlighting、folding、indentation、Decodal formatter との統合を提供する。
```sh
npm install decodal-codemirror
```
JSR では `@hare/decodal-codemirror` として提供される。
semantic evaluation と completion が必要な場合は `decodal-wasm` の language service と組み合わせる。
## Editor syntax
Tree-sitter grammar は、Tree-sitter を採用するエディタで構文解析と highlighting を行うための統合である。
Decodal runtime、formatter、LSP の利用には Tree-sitter は必要ない。
用途ごとの選択は次の通りである。
- Rust での実行と組み込み: `decodal`
- browser での実行と semantic tooling: `decodal-wasm`
- CodeMirror 6: `decodal-codemirror`
- transport 非依存の Rust language service: `decodal-language-service`
- 一般的な editor client: `decodal-lsp`
- Tree-sitter 採用 editor の syntax grammar: Tree-sitter integration
具体的な environment の構築方法は [Embedding](./embedding.md) を参照する。