ObjectStackObjectStack

Metadata Loader

Metadata Loader protocol schemas

Metadata Loader Protocol

Defines the standard interface for loading and saving metadata in ObjectStack.

This protocol enables consistent metadata operations across different storage backends

(filesystem, HTTP, S3, databases) and serialization formats (JSON, YAML, TypeScript).

Source: packages/spec/src/kernel/metadata-loader.zod.ts

TypeScript Usage

import { MetadataFallbackStrategy, MetadataManagerConfig } from '@objectstack/spec/kernel';
import type { MetadataFallbackStrategy, MetadataManagerConfig } from '@objectstack/spec/kernel';

// Validate data
const result = MetadataFallbackStrategy.parse(data);

MetadataFallbackStrategy

Allowed Values

  • filesystem
  • memory
  • none

MetadataManagerConfig

Properties

PropertyTypeRequiredDescription
datasourcestringoptionalDatasource name reference for database persistence
tableNamestringDatabase table name for metadata storage
fallbackEnum<'filesystem' | 'memory' | 'none'>Fallback strategy when datasource is unavailable
rootDirstringoptionalRoot directory path
formatsEnum<'json' | 'yaml' | 'typescript' | 'javascript'>[]Enabled formats
cacheObjectoptionalCache settings
watchbooleanEnable file watching
watchOptionsObjectoptionalFile watcher options
validationObjectoptionalValidation settings
loaderOptionsRecord<string, any>optionalLoader-specific configuration
persistenceObjectoptionalPersistence write gates

On this page