···45## Overview
67-This validation engine can be used in any project that needs AT Protocol lexicon validation. It provides high-performance, spec-compliant validation of AT Protocol lexicon documents and data records. It can also be compiled to WebAssembly for use in JavaScript/TypeScript environments.
00089## Architecture
1011-This package serves as the core validation engine and is typically consumed by higher-level packages:
01213- **`@slices/lexicon`** - TypeScript/Deno package with ergonomic APIs
014- **`lexicon-intellisense`** - VS Code extension for lexicon development
15-- **Slices CLI** - Command-line tooling for lexicon management
1617## Features
18···3132```toml
33[dependencies]
34-slices-lexicon = "0.1"
35```
3637Basic validation:
···9293```javascript
94import init, {
95- WasmLexiconValidator,
96- validate_lexicons_and_get_errors,
97- is_valid_nsid
98-} from './pkg/slices_lexicon.js';
99100await init();
101102// Validate lexicons
103const lexicons = [{
104- id: "com.example.post",
105- lexicon: 1,
106- defs: { /* ... */ }
107}];
108109const errors = validate_lexicons_and_get_errors(JSON.stringify(lexicons));
110-console.log('Validation errors:', JSON.parse(errors));
111112// Validate NSID format
113const isValid = is_valid_nsid("com.example.post");
···115116## JavaScript/TypeScript Usage
117118-If you're using JavaScript or TypeScript, use the higher-level packages instead of consuming this library directly:
0119120-- **TypeScript/JavaScript**: Use `@slices/lexicon` for ergonomic APIs with automatic resource management
0121- **VS Code Development**: Install the `lexicon-intellisense` extension
122- **CLI Tools**: Use the Slices CLI for lexicon management tasks
123···151152## License
153154-MIT
···45## Overview
67+This validation engine can be used in any project that needs AT Protocol lexicon
8+validation. It provides high-performance, spec-compliant validation of AT
9+Protocol lexicon documents and data records. It can also be compiled to
10+WebAssembly for use in JavaScript/TypeScript environments.
1112## Architecture
1314+This package serves as the core validation engine and is typically consumed by
15+higher-level packages:
1617- **`@slices/lexicon`** - TypeScript/Deno package with ergonomic APIs
18+- **`@slices/cli`** - Deno command-line tool for lexicon/appview management
19- **`lexicon-intellisense`** - VS Code extension for lexicon development
02021## Features
22···3536```toml
37[dependencies]
38+slices-lexicon = "0.2"
39```
4041Basic validation:
···9697```javascript
98import init, {
99+ is_valid_nsid,
100+ validate_lexicons_and_get_errors,
101+ WasmLexiconValidator,
102+} from "./pkg/slices_lexicon.js";
103104await init();
105106// Validate lexicons
107const lexicons = [{
108+ id: "com.example.post",
109+ lexicon: 1,
110+ defs: {/* ... */},
111}];
112113const errors = validate_lexicons_and_get_errors(JSON.stringify(lexicons));
114+console.log("Validation errors:", JSON.parse(errors));
115116// Validate NSID format
117const isValid = is_valid_nsid("com.example.post");
···119120## JavaScript/TypeScript Usage
121122+If you're using JavaScript or TypeScript, use the higher-level packages instead
123+of consuming this library directly:
124125+- **TypeScript/JavaScript**: Use `@slices/lexicon` for ergonomic APIs with
126+ automatic resource management
127- **VS Code Development**: Install the `lexicon-intellisense` extension
128- **CLI Tools**: Use the Slices CLI for lexicon management tasks
129···157158## License
159160+MIT